Hosting applications on cloud platforms like Azure.
Continuous Integration?
+
Automatically building and testing code changes.
Continuous Delivery?
+
Preparing code for release with manual approval.
Build pipeline?
+
An automated process that compiles and packages code.
Azure DevOps used for?
+
Managing CI/CD pipelines and project workflows.
Configuration per environment?
+
Using different settings for different deployment
stages.
Secrets management in deployment?
+
Secure storage of sensitive configuration values.
Rollback in deployment?
+
Reverting to a previous stable version after failure.
.NET (5/6/7/8+)?
+
A unified, cross-platform, high-performance framework
for building desktop, web, mobile, cloud, and IoT apps.
.NET Core?
+
A fast, modular, cross-platform, open-source framework
for building modern cloud and web apps.
.NET Framework?
+
A Windows-only framework with CLR and rich libraries
for building desktop and legacy ASP.NET apps.
.NET Platform Standards?
+
pecifications that ensure shared APIs and
cross-platform compatibility across .NET runtimes.
@Html.AntiForgeryToken()?
+
Token used to prevent CSRF attacks.
3 important segments for routing?
+
Controller name, Action name, and optional Parameter
(id).
3-tier focuses on application architecture.
+
MVC focuses on UI interaction and request handling.
ABAC?
+
Attribute-Based Access Control.
Abstract Class vs Interface?
+
Abstract class can have implementation; interface
cannot.
Access Control Matrix?
+
Table mapping users/roles to permissions.
Access Token Audience?
+
Specifies which API the token is intended for.
Access Token Leakage?
+
Unauthorized party obtains a token.
Accessing HttpContext
+
Access HttpContext via dependency injection using
IHttpContextAccessor; controllers/middleware access directly, services via
IHttpContextAccessor.HttpContext.
ACL?
+
Access Control List defining user permissions for a
resource.
Action Filter?
+
Code executed before or after controller action
execution.
Enables asynchronous browser-server communication to
update page parts without full reload, using controls like UpdatePanel and
ScriptManager.
AJAX in MVC?
+
Asynchronous calls to server without full page reload.
AllowAnonymous?
+
Attribute used to skip authorization.
ANCM?
+
ASP.NET Core Module enables hosting .NET Core under IIS
reverse proxy.
Anti-forgery middleware?
+
Middleware enforcing CSRF protection in .NET Core.
AntiForgeryToken validation attribute?
+
[ValidateAntiForgeryToken] ensures request includes
valid token.
AntiXSS?
+
Technique for preventing cross-site scripting.
AOT Compilation?
+
Compiles .NET apps to native code for faster startup
and lower memory use.
API Key Authentication?
+
Custom header with an API key.
API Key Authorization?
+
Simple authorization using an API key header.
API Versioning Methods?
+
URL, Header, Query, Media Type.
ApiController attribute do?
+
Enables auto-validation and improved routing.
App Domain Concept in ASP.NET?
+
AppDomain isolates applications within a web server. It
provides security, reliability, and memory isolation. Each website runs in
its own AppDomain. If one crashes, others remain unaffected.
App.Run vs app.Use?
+
app.Use() continues the pipeline; app.Run() terminates
it.
App.UseDeveloperExceptionPage()?
+
Displays detailed errors in development mode.
App.UseExceptionHandler()?
+
Middleware for centralized exception handling.
AppDomain?
+
Isolated region where a .NET application runs.
Application Model
+
The application model determines how controllers,
actions, and routing behave. It helps apply conventions and filters across
the application.
Application Pool in IIS?
+
Worker process isolation unit.
Appsettings.json used for?
+
Stores configuration values like connection strings,
logging, and custom settings.
Appsettings.json?
+
Stores key/value settings for the application, commonly
used in ASP.NET Core MVC.
Area in MVC?
+
Module-level grouping for large applications (Admin,
Customer, User).
ASP.NET Core host apps without IIS?
+
Yes, it can run standalone using Kestrel.
ASP.NET Core run in Docker?
+
Yes, it supports containerization with official runtime
and SDK images.
ASP.NET Core serve static files?
+
By enabling app.UseStaticFiles() and placing files in
wwwroot.
ASP.NET Core?
+
A cross-platform, high-performance web framework for
building modern cloud-based applications.
ASP.NET filters run at the end?
+
Exception Filters are executed last. They handle
unhandled errors during action or result processing. Used for logging and
custom error pages. Ensures graceful error handling.
ASP.NET Identity?
+
Framework for user management, roles, claims.
ASP.NET MVC?
+
Model–View–Controller pattern for web applications.
ASP.NET page life cycle?
+
ASP.NET page life cycle defines stages a page goes
through when processing. Key stages: Page Request, Initialization, View
State Load, Postback Event Handling, Rendering, and Unload. Events allow
custom logic execution at each phase. It controls how data is processed and
displayed.
ASP.NET Web Forms?
+
Event-driven web framework using drag-and-drop UI.
ASP.NET?
+
Microsoft’s web framework for building dynamic,
high-performance web apps with MVC, Web API, and WebForms.
Assemblies?
+
Compiled .NET code units containing code, metadata, and
manifests (DLL or EXE) for deploying
Assembly defining MVC:
+
MVC components are defined in System.Web.Mvc.dll.
Assign an alias name for ASP.NET Web API Action?
+
You can use the [ActionName] attribute to give an alias
to an action. Example: [ActionName("GetStudentInfo")]. This helps when
method names and route names need to differ. It's useful for versioning and
friendly URLs.
Async action method?
+
Action using async/await for non-blocking operations.
Async operations in EF Core?
+
Perform database tasks asynchronously to improve
responsiveness and scalability.Use ToListAsync(), FirstAsync(), etc.
Async programming?
+
Non-blocking programming using async/await.
Attribute Routing
+
Defines routes directly on controllers and actions
using attributes like [Route("api/[controller]")].
Attribute-based routing?
+
Routing using attributes above controller/action.
Attributes?
+
Metadata annotations used for declaring properties
about code.
Authentication and authorization in ASP.NET?
+
Authentication verifies user identity (who they are).
Authorization defines access permissions for authenticated users. ASP.NET
supports built-in security mechanisms. Both ensure secure application
access.
Authentication in ASP.NET Core?
+
Process of verifying user identity.
Authentication modes in ASP.NET for security?
+
ASP.NET supports Windows, Forms, Passport, and
Anonymous authentication. Forms authentication is common for web apps.
Security is configured in Web.config. Each mode provides a method to
validate users.
Enforces authorization using roles, policies, or
claims.
AutoMapper?
+
Library for mapping objects automatically.
B2B Authorization?
+
Authorization in multi-tenant business apps.
B2C Authorization?
+
Authorization in consumer-facing apps.
Backchannel Communication?
+
Secure server-server communication for token exchange.
Background worker coding?
+
Inherit from BackgroundService.
BackgroundService class?
+
Runs long-lived background tasks in .NET apps, e.g.,
for messaging or monitoring.
Basic Authentication?
+
Authentication using Base64 encoded username and
password.
Basic Authorization?
+
Credentials sent as Base64 encoded username:password.
Bearer Authentication?
+
Token-based authentication mechanism where tokens are
sent in request headers.
BeforeFilter(), beforeRender(), afterFilter():
+
beforeFilter() runs before action, beforeRender() runs
before view rendering, and afterFilter() runs after the response.
Benefits of ASP.NET Core?
+
Cross-platform, Cloud-ready, container friendly,
modular, and fast runtime.
Benefits of using MVC:
+
MVC gives separation of concerns, supports testability,
clean URLs, maintainability, and scalability.
Blazor Server and WebAssembly?
+
Server-side rendering vs client-side execution in
browser.
Blazor?
+
Framework for building interactive web UIs using C#
instead of JavaScript.
Build in .NET?
+
Compilation of code into IL.
Cache Tag Helper
+
This helper caches rendered HTML output on the server,
improving performance for static or rarely changing UI sections.
Caching / Response Caching
+
Caching stores output to improve performance and reduce
processing. Response caching stores HTTP responses, improving load time for
repeated requests.
Caching in ASP.NET Core?
+
Improves performance by storing frequently accessed
data.
Caching in ASP.NET?
+
Caching stores frequently accessed data to improve
performance using Output, Data, or Object Caching.It reduces server load,
speeds up responses, and is ideal for static or rarely changing data.
Can you create an app using both WebForms and MVC?
+
Yes, it is possible to host both in the same project.
MVC can coexist with WebForms when routing is configured properly. This
allows gradual migration. Both frameworks share the same runtime
environment.
Cases where routing is not needed:
+
Routing is unnecessary for requests for static files
like images/CSS or for direct WebForms/WebService calls.
Change Token
+
A Change Token is a notification mechanism used to
monitor changes, such as configuration files or file-based caching. When a
change occurs, the token triggers refresh or rebuild actions.
CIL/IL?
+
Intermediate code that the CLR JIT-compiles into
machine code, enabling language-independence and runtime optimization.
Claim-Based Authorization?
+
Authorization based on user claims such as email, age,
department.
Claims?
+
User-specific attributes like name, id, role.
Claims-based authorization?
+
Authorization using claims stored in user identity.
Class is used to return JSON in MVC?
+
JsonResult class is used to return JSON formatted data.
Class library?
+
A project that compiles to reusable DLL.
Client-side validation?
+
Validation executed in browser using JavaScript.
Coarse-Grained Authorization?
+
Role-level access control.
Code behind an Inline Code?
+
Code-behind keeps design and logic separate using
external .cs files. Inline code is written directly inside .aspx pages.
Code-behind improves maintainability and reusability. Inline code is simpler
but less structured.
Code First Migration?
+
Approach where database schema is created from C#
models.
Column-Level Security?
+
Restricts access to specific columns.
Command builds project?
+
dotnet build
Command is used to scaffold projects?
+
dotnet new
Command restores packages?
+
dotnet restore
Command runs app?
+
dotnet run
Concepts of Globalization and Localization in .NET?
+
Globalization prepares an app to support multiple
languages and cultures. Localization customizes the app for a specific
culture using resource files. ASP.NET uses .resx files for language
translation. These features help create multilingual web applications.
Configuration / appsettings.json
+
Settings are stored in appsettings.json and accessed
using IConfiguration.
Configuration System in .NET Core?
+
Instead of Web.config, .NET Core uses appsettings.json,
environment variables, user secrets, and Azure KeyVault. It supports
hierarchical and strongly typed configuration.
ConfigurationBuilder?
+
ConfigurationBuilder loads settings from multiple
sources like JSON, XML, Azure, or environment variables. It provides
flexible app configuration.
Containerization in ASP.NET Core?
+
Running application inside lightweight containers
instead of full VMs.
Controller in MVC?
+
Controller handles incoming requests, processes data,
and returns responses.
Controller?
+
A controller handles incoming HTTP requests and returns
responses such as JSON, views, or status codes. It follows MVC
(Model-View-Controller) pattern.
ControllerBase?
+
Base class for API controllers (no views).
Convention-based routing?
+
Routing following default predefined conventions.
Cookie vs Token Auth?
+
Cookie is server-based; token is stateless.
Cookie-less Session:
+
When cookies are disabled, session data is tracked
using URL rewriting. Session ID appears in the URL. Helps maintain session
without browser cookies.
Cookies in ASP.NET?
+
Cookies store user data in the browser, such as
username or session ID, for future requests.ASP.NET supports persistent and
non-persistent cookies to enhance personalization and authentication.
Create .NET Core API project?
+
Use: dotnet new webapi -n MyApi
Cross-page posting in ASP.NET:
+
Cross-page posting allows a form to post data to
another page using PostBackUrl property. The target page can access source
page controls using PreviousPage property. Useful for multi-step forms.
Cross-Platform Compilation?
+
.NET Core/.NET can compile and run on Windows, Linux,
or macOS. Developers can build apps once and run them anywhere.
CRUD API coding question?
+
Implement GET, POST, PUT, DELETE endpoints.
CSRF Protection
+
CSRF attacks force users to perform unintended actions.
ASP.NET Core mitigates it using anti-forgery tokens and validation
attributes.
Custom middleware is created by writing a class with an
Invoke or InvokeAsync method that accepts HttpContext. It is registered in
the pipeline using app.Use(). Middleware can modify requests, responses, or
pass control to the next component.
Custom Model Binding
+
Implement IModelBinder and register it using
ModelBinderProvider.
Data Annotation?
+
Attribute-based validation such as [Required], [Email],
[StringLength].
Data Annotations?
+
Attributes used for validation like [Required],
[Email], [StringLength].
Data Cache:
+
Data Cache stores frequently used data to improve
performance. It supports expiration policies and dependency-based
invalidation. Accessed through HttpRuntime.Cache.
Data controls available in ASP.NET?
+
ASP.NET provides several data-bound controls like
GridView, ListView, Repeater, DataList, and FormView. These controls display
and manipulate database records. They support sorting, paging, and editing
features. They simplify data presentation.
Data Protection API?
+
Encrypting sensitive data.
Data Seeding?
+
Preloading default or sample data into database.
Default project structure?
+
Minimal hosting model with Program.cs and optional
folders for Models, Controllers, Services.
Default route format?
+
{controller}/{action}/{id}
Define Default Route:
+
The default route is {controller}/{action}/{id} with
default values like Home/Index. It helps map incoming requests
automatically.
Define DTO.
+
Data Transfer Object—used to expose safe API models.
Define Filters in MVC.
+
Filters allow custom logic before or after controller
actions, such as authentication, logging, or error handling.
Define Output Caching in MVC.
+
Output caching stores the rendered output of an action
to improve performance and reduce server processing.
Define Scaffolding in MVC:
+
Scaffolding automatically generates CRUD code and views
based on the model. It speeds up development by providing a code structure
quickly.
Define the 3 logical layers of MVC?
+
Presentation layer → View Business logic layer →
Controller Data layer → Model
DenyAnonymousAuthorization?
+
Policy that allows only authenticated users.
Describe application state management in ASP.NET.
+
Application State stores global data accessible to all
sessions. It is stored in server memory and persists until restart. Useful
for shared counters or configuration data. It reduces repeated data loading.
Describe ASP.NET MVC.
+
It is a lightweight Microsoft framework that follows
MVC architecture for building scalable, testable web applications.
Describe login Controls in ASP.
+
Login controls simplify user authentication. Examples
include Login, LoginView, LoginStatus, PasswordRecovery, and
CreateUserWizard. They handle username validation, password reset, and
security membership. They reduce custom coding effort.
DI (Dependency Injection)?
+
A design pattern where dependencies are provided rather
than created inside a class.
DI Container?
+
Object lifetime and dependency management system.
DI for Controllers
+
ASP.NET Core injects dependencies into controllers via
constructor injection. Services must be registered in ConfigureServices.
DI for Views
+
Views receive dependencies using @inject directive.
This helps share services such as logging or localization.
.NET Core and .NET Framework?
+
.NET Core is cross-platform and modular; .NET Framework
is Windows-only and monolithic.
ASP.NET MVC and WebForms?
+
MVC follows separation of concerns and doesn’t use
ViewState, while WebForms uses event-driven model with ViewState.
Claims and Roles?
+
Role is a type of claim for grouping permissions.
Code First and DB First in EF?
+
Code First generates DB from classes, Database First
generates classes from DB.
Dataset and DataReader?
+
Dataset is disconnected; DataReader is connected and
forward-only.
EF and EF Core?
+
EF Core is cross-platform, lightweight, and supports
LINQ to SQL.
EXE and DLL?
+
EXE is an executable process; DLL is a reusable
library.
GET and POST?
+
GET retrieves data; POST submits or modifies server
data.
LINQ to SQL and Entity Framework?
+
LINQ to SQL is limited to SQL Server; EF supports
multiple databases.
PUT and PATCH?
+
PUT replaces entire resource; PATCH updates part of it.
Razor and ASPX view engine?
+
Razor is cleaner, faster, and uses minimal markup
compared to ASPX.
REST and SOAP?
+
REST is lightweight and stateless using JSON, while
SOAP uses XML and is more structured.
Role-Based vs Permission-Based?
+
Role groups permissions, permission defines specific
capability.
Session and cookies?
+
Cookies store on client browser, sessions store on
server.
Thread and Task?
+
Thread is OS-level entity; Task is a higher-level
abstraction.
Value type and Reference type?
+
Value types stored in stack, reference types stored in
heap.
ViewBag and ViewData?
+
ViewData is dictionary-based; ViewBag uses dynamic
properties. Both are temporary and request-scoped.
WCF and Web API?
+
WCF supports protocols like TCP/SOAP; Web API is
REST-based.
Worker process and app pool?
+
App pool groups worker processes; worker process
executes application.
DiffBet 3-tier and MVC?
+
3-tier architecture has Presentation, Business, and
Data layers. MVC has Model, View, and Controller roles for UI pattern.
DiffBet ActionResult and ViewResult.
+
ActionResult is a base type that can return various
results.
DiffBet ActionResult and ViewResult?
+
ActionResult is a base class for various result types
(JsonResult, RedirectResult, etc.). ViewResult specifically returns a View.
Controller methods can return either. ActionResult provides flexibility for
different response formats.
DiffBet adding routes in WebForms and MVC.
+
WebForms uses file-based routing whereas MVC uses
pattern-based routing.MVC routing maps URLs directly to controllers and
actions.
DiffBet AddTransient, AddScoped, and AddSingleton?
+
Transient: New instance every request,Scoped: One
instance per HTTP request,Singleton: Same instance for entire application
lifetime
DiffBet ASP.NET Core and ASP.NET?
+
Core is cross-platform, lightweight, modular, and
faster. Classic ASP.NET is Windows-only, uses System.Web, and is heavier.
DiffBet ASP.NET MVC 5 and ASP.NET Core MVC?
+
ASP.NET Core MVC is cross-platform, modular,
open-source, and integrates Web API into MVC. MVC 5 works only on Windows
and is more monolithic. Core also uses middleware instead of pipeline
handlers.
DiffBet EF Core and EF Framework?
+
EF Core is lightweight, cross-platform, extensible, and
faster than EF Framework. EF Framework supports only .NET Framework and
lacks many modern features like batching, no-tracking queries, and shadow
properties.
DiffBet HTTP Handler and HTTP Module:
+
Handlers handle and respond to specific requests
directly. Modules work in the pipeline and intercept requests during
processing. Multiple modules can exist for one request, but only one handler
processes it.
DiffBet HttpContext.Current.Items and
HttpContext.Current.Session:
+
Items is used to store data for a single HTTP request
and is cleared after the request ends. Session stores data across multiple
requests for the same user. Items is faster and used for request-level
sharing.
DiffBet Server.Transfer and Response.Redirect:
+
Server.Transfer transfers execution to another page on
the server without changing the URL. Response.Redirect sends the browser to
a new page and changes the URL. Redirect performs a round trip to the
client; Transfer does not.
DiffBet session and caching:
+
Session stores user-specific data and is used per user.
Cache stores application-wide frequently used data to improve performance.
Session expires when the user ends or times out, while cache expiry depends
on policies like sliding or absolute expiration.
DiffBet TempData, ViewData, and ViewBag?
+
ViewData: Dictionary-based, valid only for current
request. ViewBag: Wrapper around ViewData using dynamic properties.
TempData: Persists only for the next request (used for redirects). 18) What
is a partial view in MVC?
DiffBet View and Partial View.
+
A View renders the full UI while a Partial View renders
a reusable section of the UI.
DiffBet View and Partial View?
+
A View renders a complete page layout. A Partial View
renders only a portion of UI. Partial View does not include layout pages by
default. Useful for reusable components.
DiffBet Web API and WCF:
+
Web API is lightweight and designed for RESTful
services using HTTP. WCF supports multiple protocols like HTTP, TCP, and
MSMQ. Web API is best for modern web/mobile services, WCF for enterprise
SOA.
DiffBet Web Forms and MVC?
+
MVC is lightweight and testable; Web Forms is
event-driven and stateful.
DiffBet WebForms and MVC?
+
WebForms are event-driven and stateful. MVC is
lightweight, stateless, and supports testability. MVC offers full control
over HTML. WebForms use server-side controls and ViewState.
Difference: app.Use vs app.Run?
+
app.Use() allows multiple middlewares; app.Run()
terminates the pipeline and passes no further requests.
Different approaches to implement Ajax in MVC.
+
Using Ajax.BeginForm(), jQuery Ajax(), or Fetch API.
Different properties of MVC routes?
+
Key properties are URL, Defaults, Constraints, and
DataTokens.
Different return types used by the controller action
method in MVC?
+
Common return types are ViewResult, JsonResult,
RedirectResult, ContentResult, FileResult, and ActionResult. ActionResult is
the base type for most results.
Different Session state management options available
in ASP.NET?
+
ASP.NET stores user-specific data across requests using
InProc, StateServer, SQL Server, or Custom modes.InProc keeps data in
memory, while StateServer and SQL Server store it externally, all
server-side and secure.
Different validators in ASP.NET?
+
Controls like RequiredField, Range, Compare, Regex,
Custom, and ValidationSummary ensure correct input on client and server
sides.
Different ways for bundling and minification in
ASP.NET Core?
+
Combine and compress scripts/styles to reduce size and
improve performance, using tools like Webpack or NUglify.
Directive reads environment?
+
app.Environment.IsDevelopment()
Directory Service?
+
Stores users, groups, and permissions (AD, LDAP).
Display something in CodeIgniter?
+
Use the controller to load a view. Example:
$this->load->view("welcome_message"); The view outputs content to the
browser. Models supply data if required.
Modern routing system introduced to unify MVC, Razor
Pages, and SignalR routing.
Ensure Web API returns JSON only?
+
Remove XML formatters and keep only JSON formatter in
WebApiConfig. Example:
config.Formatters.Remove(config.Formatters.XmlFormatter);. Now the API
always responds in JSON format. Useful for modern REST services.
Enterprise Library:
+
Enterprise Library provides reusable software
components like Logging, Data Access, Validation, and Exception Handling.
Helps build enterprise-level maintainable applications.
Configuration used to define environment (Development,
Staging, Production).
Error handling middleware?
+
Middleware for diagnostics and custom error responses
(e.g., DeveloperExceptionPage, ExceptionHandler).
Error Handling Strategies
+
Use middleware like UseExceptionHandler, logging,
global filters, and status code pages.
Examples of HTML Helpers?
+
TextBoxFor, DropDownListFor, LabelFor, HiddenFor.
Execute any MVC project?
+
Build the project → Run IIS Express/Local host →
Routing selects controller → Action returns view → Output is rendered in
browser.
Explain ASP.NET Core.
+
It is a cross-platform, open-source framework for
building modern web applications. It provides high performance, modular
design, and supports MVC, Razor Pages, Web APIs, and SignalR.
Explain in brief the role of different MVC components.
+
Model manages logic and data. View is responsible for
UI.Controller acts as a bridge processing user requests and returning
responses.
Explain Model, View, and Controller in Brief.
+
Model holds application logic and data. View displays
data to the user. Controller handles user input, interacts with Model, and
selects the View to render.
Explain Request Pipeline.
+
Request flows through middleware components configured
in Program.cs (pre .NET 6: Startup.cs) before generating a response.
Explain separation of concern.
+
It divides an application into distinct sections, each
responsible for a single concern, reducing dependency.
Explain some benefits of using MVC.
+
It supports separation of concerns, easy testing, clean
code structure, and supports TDD. It’s extensible and suitable for large
applications.
Explain TempData, ViewData, ViewBag.
+
TempData: Stores data temporarily across redirects.
Explain the MVC Application life cycle.
+
It includes: Application Start → Routing → Controller
Initialization → Action Execution → Result Execution → View Rendering →
Response sent to client.
Explicit Allow?
+
Specific rule allows access.
Explicit Deny?
+
Rule that overrides all allows.
External authentication?
+
Login using Google, Microsoft, Facebook, GitHub
providers.
Features of MVC?
+
MVC supports separation of concerns. It promotes
testability, flexibility, and clean architecture. Provides routing, Razor
syntax, and built-in validation. Ideal for large, scalable web applications.
Federation in Authorization?
+
Trust relationship between identity providers and
applications.
File extension for Razor views?
+
.cshtml
File extensions for Razor views?
+
Razor views use: .cshtml for C# .vbhtml for VB.NET
These files support inline Razor syntax.
File replaces Web.config in ASP.NET Core?
+
appsettings.json
FileResult?
+
Returns files like PDF, images, or documents.
Filter in MVC?
+
Reusable logic executed before or after action methods.
Filter types?
+
Authorization, Resource, Action, Exception, Result
filters.
Filters executed at the end:
+
Result filters are executed at the end, just before and
after the view is rendered.
Filters in ASP.NET Core?
+
Run pre- or post-action logic like validation, logging,
caching, or authorization in controllers.
Filters in MVC Core?
+
Reusable logic executed before or after actions.
Filters?
+
Components to run code before/after actions.
FormCollection?
+
Object storing form values submitted by user.
Forms Authentication?
+
User logs in through custom login form.
Framework-Dependent Deployment?
+
App runs on an installed .NET runtime, producing a
smaller executable.
Frontchannel Communication?
+
Browser-based token communication.
GAC : Global Assembly Cache?
+
Stores shared .NET assemblies for multiple apps,
supporting versioning and avoiding DLL conflicts.
Garbage Collection (GC)?
+
Automatic memory management that removes unused
objects.
Generic Repository?
+
A reusable data access pattern that works with any
entity type to perform CRUD operations.
GET and POST Action types:
+
GET retrieves data and does not modify state. POST
submits data and is used for creating or updating records.
Global exception handling coding?
+
Create custom exception middleware.
Global Exception Handling?
+
Error handling applied across entire application using
middleware.
Global.asax?
+
Application-level events like Start, End, Error.
GridView Control:
+
GridView displays data in a tabular format and supports
sorting, paging, and editing. It binds to data sources like SQL, lists, or
datasets. It provides templates and commands for customization.
GZip Compression?
+
Compressing responses to reduce payload size.
Handle 404 in ASP.NET Core?
+
Use middleware such as: app.UseStatusCodePages();
Health Check in .NET Core?
+
Monitor app and dependency status, useful for
Kubernetes and cloud deployments.
Health Checks?
+
Endpoints that report app health.
Host in ASP.NET Core?
+
Manages DI, configuration, logging, and middleware;
includes WebHost and GenericHost.
Host?
+
Host manages app lifetime, configuration, logging, DI,
and environment.
HostedService?
+
Interface for background tasks.
Authorize multiple roles?
+
[Authorize(Roles=\Admin Manager\")]"
Execute Stored Procedures?
+
Use FromSqlRaw().
Implement Pagination?
+
Use Skip() and Take().
Prevent privilege escalation?
+
Validate authorization checks on every sensitive
action.
Methods that generate HTML controls programmatically in
views.
HTML server controls in ASP.NET?
+
HTML controls become server controls by adding
runat="server". They behave like programmable server-side objects. They
allow event handling and server processing.
HTTP Handler?
+
An HttpHandler is a component that processes individual
HTTP requests. It acts as an endpoint for file extensions like .aspx, .ashx,
.jpg etc. It is lightweight and best for custom resource generation.
HTTP Logging Middleware?
+
Logs details about incoming requests and responses.
HTTP Status Codes?
+
200 OK, 201 Created, 400 Bad Request, 401 Unauthorized,
404 Not Found, 500 Server Error.
HTTP Verb Mapping?
+
Mapping controller actions to verbs using [HttpGet],
[HttpPost], etc.
HTTP Verb?
+
Operations like GET, POST, PUT, DELETE mapped to
actions.
HttpClientFactory?
+
Factory pattern to create and manage HttpClient
instances.
HttpModule?
+
Windows-only ASP.NET components that handle HTTP
request/response events in the pipeline.
HTTPS Redirection Middleware?
+
Forces application to use secure connection.
HTTPS Redirection?
+
Force HTTPS using app.UseHttpsRedirection().
IActionFilter?
+
Interface for implementing custom filters.
IActionResult?
+
Base interface for action results in ASP.NET Core MVC.
IAM?
+
Identity and Access Management.
IAuthorizationService?
+
Service to manually invoke authorization
programmatically.
IConfiguration?
+
Interface used to read configuration data.
Identity Framework?
+
Built-in membership system for authentication and user
roles.
IdentityServer?
+
OAuth2/OpenID Connect framework for authentication and
authorization.
IHttpContextAccessor?
+
Used to access HTTP context in non-controller classes.
IIS Integration?
+
In Windows hosting, Kestrel works behind IIS. IIS
handles SSL, load balancing, and process management, while Kestrel executes
the request pipeline.
IIS?
+
Internet Information Services — a Windows web server.
ILogger?
+
Logging interface used for tracking application events.
Implement Ajax in MVC?
+
Using @Ajax.BeginForm() and AjaxOptions. You can call
actions asynchronously using jQuery AJAX. The server returns JSON or partial
views. This improves performance without full page reloads.
Implement MVC Forms authentication:
+
Forms authentication uses login pages, authentication
cookies, and AuthorizeAttribute to protect secured pages.
Implicit Deny?
+
If no rule allows it, access is denied.
Importance of NonActionAttribute?
+
It marks a method in a controller as not an action
method. This prevents it from being executed via URL routing. Useful for
helper methods within controllers. Enhances security and routing control.
Use caching, compression, output caching, and minimized
ViewState. Optimize SQL queries and enable async processing. Reduce server
round trips and bundling/minifying scripts.
In-memory vs Distributed Cache
+
In-memory caching stores data on the server and is best
for single-instance apps. Distributed caching uses Redis or SQL Server and
supports load-balanced environments.
IOptions pattern?
+
Used to map configuration sections to strongly typed
classes.
Is ASP.NET Core open source?
+
Yes, it is developed under the .NET Foundation and is
fully open source.
Is DI built-in in ASP.NET Core?
+
Yes, ASP.NET Core has built-in DI support.
Is MVC stateless?
+
Yes, MVC follows stateless architecture where every
request is independent.
JSON global config?
+
builder.Services.Configure(...).
JSON Serializer used?
+
System.Text.Json (default), with option to use
Newtonsoft.Json.
JSON.stringify?
+
Converts JavaScript object into JSON format for ajax
posts.
JsonResult?
+
Returns JSON formatted response.
Just-In-Time Access (JIT)?
+
Provide temporary elevated permissions.
JWT Authentication?
+
JWT (JSON Web Token) is a token-based authentication
method used in microservices and APIs. It stores claims and is stateless,
meaning no session storage is required.
JWT creation coding?
+
Use JwtSecurityTokenHandler to generate token.
Kestrel Server?
+
Kestrel is the default lightweight web server in
ASP.NET Core. It is fast, cross-platform, and optimized for high-performance
apps.
Key DifBet ASP.NET and ASP.NET Core?
+
ASP.NET Core is cross-platform, modular, open-source,
and faster compared to ASP.NET Framework.
Latest version of ASP.NET Core?
+
The latest stable version of ASP.NET Core (as of
December 2025) follows the latest .NET release: ASP.NET Core 10.0 — shipped
with .NET 10 on November 11, 2025.
LaunchSettings.json in ASP.NET Core?
+
This file stores environment and profile settings for
the application during development. It defines the application URL, SSL
settings, and environment variables like ASPNETCORE_ENVIRONMENT. It helps
configure debugging profiles for IIS Express or direct execution.
Layout Page?
+
Master template providing shared UI like header/footer
across multiple views.
Least Privilege Access?
+
Users receive minimal required permissions.
Library supports resiliency?
+
Polly.
List HTTP methods.
+
GET, POST, PUT, PATCH, DELETE, OPTIONS.
Lock statement?
+
Prevents multiple threads from accessing code
simultaneously.
Logging in .NET Core?
+
.NET Core provides built-in logging with providers like
Console, Debug, Serilog, and Application Insights. It helps monitor app
behavior and errors.
Logging in ASP.NET Core?
+
Built-in framework to log information using ILogger.
Logging in MVC Core?
+
Capturing application logs via ILogger and providers.
Logging providers are supported?
+
Console, Debug, Azure App Insights, Seq, Serilog.
Logging Providers?
+
Serilog, NLog, Seq, Application Insights.
Logging System
+
Built-in support for console, file, Application
Insights, SeriLog, etc.
Logging?
+
System to capture and store application logs.
Machine.config?
+
System-wide configuration file for .NET Framework.
Main DiffBet MVC and Web API?
+
MVC is used to return views (HTML) for web
applications. Web API is used to build RESTful services and returns data
formats like JSON or XML. MVC is UI-focused, whereas Web API is
service-focused. Web API can be used by mobile, IoT, and web clients.
Maintain the sessions in MVC?
+
Session can be maintained using Session[], cookies,
TempData, ViewBag, QueryString, and Hidden fields.
Major events in global.aspx?
+
Common events include Application_Start, Session_Start,
Application_BeginRequest, Session_End, and Application_End. These events
manage application life cycle tasks. They handle logging, caching, and
security logic. They execute globally for the entire application.
Master pages in ASP.NET?
+
Master pages define a common layout for multiple web
pages. Content pages inherit this layout to maintain consistent UI. They
reduce duplication of HTML code. Common parts like headers, footers, and
menus are shared.
Master Pages:
+
Master Pages define a common layout for multiple pages.
Content pages fill placeholders within the master. Useful for consistency
and easier maintenance.
Message Queues?
+
Kafka, RabbitMQ, Azure Service Bus.
Metadata in .NET?
+
Information about types, methods, references stored
with assemblies.
Methods of session maintenance in ASP.NET:
+
ASP.NET provides several ways to maintain sessions,
including In-Process (InProc), State Server, SQL Server, and Custom session
state providers. Cookies and cookieless sessions are also used. These
mechanisms help store user-specific data across requests.
Middleware components?
+
Pipeline components that process HTTP requests and
responses in sequence.
Middleware Concept
+
Middleware are components processing requests in
sequence.
Middleware?
+
Components that process HTTP requests in ASP.NET Core
pipeline.
Migration commands?
+
dotnet ef migrations add Name; dotnet ef database
update
Migrations?
+
System for applying and tracking database schema
changes.
Minification and Bundling used?
+
They reduce file size and combine multiple CSS/JS files
to improve performance.
Minimal API?
+
Lightweight HTTP API setup introduced in .NET 6 using
minimal hosting model.
Mocking Framework?
+
Tools like MOQ used to simulate dependencies during
testing.
Mocking?
+
Simulating dependencies using fake objects.
Modal Binding in Razor Pages?
+
Mapping form inputs automatically to page properties.
Model Binder?
+
Maps request data to models automatically.
Model Binding
+
Automatically maps form, query string, and JSON data to
model classes.
Model Binding?
+
Automatic mapping of HTTP request data to model
objects.
Model in MVC?
+
Model represents application data and business logic.
Model Validation
+
Uses Data Annotations and custom validation attributes.
Model Validation?
+
Ensuring input meets validation rules before
processing.
ModelState?
+
Stores the state of model binding and validation
errors.
Model-View-Controller?
+
MVC is a design pattern that separates an application
into Model, View, and Controller components.
Monolith Architecture?
+
Single deployable unit with tightly coupled components.
Multiple environments
+
Configured using ASPNETCORE_ENVIRONMENT variable (Dev,
Staging, Prod).
MVC Architecture
+
Separates application logic into Model, View,
Controller.
MVC Components
+
Model stores data, View displays UI, Controller handles
requests.
MVC in AngularJS?
+
AngularJS follows an MVC-like architecture. Model holds
data, View represents the UI, and Controller manages logic. It helps in
clear separation of concerns in client-side apps. Angular automates data
binding between Model and View.
MVC in ASP.NET Core?
+
Model-View-Controller pattern used for web UI and API
development.
MVC Page life cycle stages:
+
Stages include Routing, Controller initialization,
Action execution, Result execution, and View rendering.
MVC Routing?
+
Maps URL patterns to controller actions.
MVC works in Spring?
+
Spring MVC uses DispatcherServlet as the front
controller. It routes requests to controllers. Controllers return Model and
View data. The ViewResolver renders the final response.
MVC?
+
MVC (Model-View-Controller) separates business logic,
UI, and request handling into Model, View, and Controller.This improves
testability, maintainability, scalability, and is widely used for modern web
applications.
Name the assembly in which the MVC framework is
typically defined.
+
ASP.NET MVC is mainly defined in the System.Web.Mvc
assembly.
Navigate from one view to another using a hyperlink?
+
Use the Html.ActionLink() helper in MVC. Example:
@Html.ActionLink("Go to About", "About", "Home"). This generates an anchor
tag with route mapping. Clicking it redirects to the specified view.
Navigation between views example.
+
Using hyperlink: Go to About.
Navigation techniques:
+
Navigation in ASP.NET uses Hyperlinks,
Response.Redirect, Server.Transfer, Cross-page posting, and Site Navigation
controls like Menu and TreeView. It helps users move between pages.
Features include Razor Class Libraries, HTTPS by
default, SPA templates, SignalR support, and GDPR compliance tools. It also
introduced global tools, improved performance, and simplified identity UI.
Non-Repudiation?
+
Ensuring actions cannot be denied by users.
N-Tier architecture?
+
Layers like UI, Business, Data Access.
NTLM?
+
Windows challenge-response authentication protocol.
NuGet?
+
Package manager for .NET libraries.
NUnit/MSTest?
+
Unit testing frameworks for .NET.
OAuth Refresh Token Rotation?
+
Invalidating old refresh token when issuing a new one.
OAuth vs SAML?
+
OAuth is authorization; SAML is authentication using
XML.
OAuth2 Authorization Code Flow?
+
Secure flow used by web apps requiring user login.
OAuth2 Client Credentials Flow?
+
Service-to-service authorization.
OAuth2 Implicit Flow?
+
Legacy browser flow not recommended.
Optimistic Concurrency?
+
Use [Timestamp]/RowVersion to prevent data overwrites
via row-version checks.
Options Pattern
+
Used to bind strongly typed classes to configuration
sections.
Order of filter execution in MVC
+
Order: 1. Authorization Filters 2. Action Filters 3.
Result Filters 4. Exception Filters Execution occurs in a defined pipeline
sequence.
Ordering execution when multiple filters are used:
+
Filters run in the order: Authorization → Action →
Result → Exception filters. Custom ordering can also be defined using the
Order property.
OutputCache?
+
Caching mechanism used in MVC Framework to improve
response time.
OWIN and ASP.NET Core
+
OWIN was designed to decouple web servers from web
applications. ASP.NET Core builds on the same lightweight pipeline concept
but replaces OWIN with a more flexible middleware model.
Package enables Swagger?
+
Swashbuckle.AspNetCore
Page directives in ASP.NET:
+
Page directives provide configuration and instruction
to the compiler. Examples include @Page, @Import, @Master, and @Control.
They define attributes like language, inheritance, and code-behind file.
Pagination coding question?
+
Implement Skip(), Take(), and metadata.
Pagination in API?
+
Return data with totalCount, pageNo, pageSize.
Partial view in MVC?
+
A partial view is a reusable piece of UI code. It works
like a user control and avoids code duplication. It is rendered inside
another view. Useful for menus, headers, and reusable content blocks.
Partial Views
+
Partial views reuse UI sections like menus or forms.
They reduce code duplication and improve maintainability.
Parts of JWT?
+
Header, Payload, Signature.
PBAC?
+
Policy-Based Access Control.
Permission?
+
A specific capability like Read, Write, or Delete.
Permission-Based API Authorization?
+
APIs check user permissions before actions.
Points to remember while creating MVC application?
+
Maintain separation of concerns. Use routing properly
for readability. Keep business logic in the Model or services. Use
ViewModels instead of exposing database models.
Policies in authorization?
+
Reusable authorization rules defined using
AddAuthorization.
IsPostBack indicates whether the page is loaded first
time or due to a user action like a button click. It helps avoid re-binding
data unnecessarily. Useful for improving performance.
PostBack?
+
When a page sends data to the server and reloads
itself.
Prevent CSRF?
+
Anti-forgery tokens and SameSite cookies.
Privileged Access Management (PAM)?
+
System to monitor and control high-privilege accounts.
Program.cs used for?
+
Defines application bootstrap, host builder, and
startup configuration.
Program.cs?
+
Entry point that configures the host, services, and
middleware.
Purpose of MVC pattern?
+
To separate concerns and make application maintainable,
testable, and scalable.
Query String in ASP?
+
Query strings pass values through the URL during page
requests. They are used for lightweight data transfer. A query string starts
after a ? in the URL. It is visible to users, so sensitive data should not
be stored.
Razor Pages in ASP.NET Core?
+
Page-focused ASP.NET Core model with combined view and
logic, ideal for CRUD apps.
Razor Pages?
+
Page-based model alternative to MVC introduced in .NET
Core.
Razor View Engine?
+
Lightweight syntax for writing server-side code inside
HTML.
Razor view file extensions:
+
.cshtml (C# Razor) and .vbhtml (VB Razor) are used for
Razor views.
Razor?
+
A markup syntax in ASP.NET for embedding C# into views.
Real-life example of MVC?
+
A shopping website: Model: Product data View: Product
display page Controller: User actions like Add to Cart They work together to
complete functionality.
RedirectToAction()?
+
Redirects browser to another action or controller.
Redis caching coding?
+
AddStackExchangeRedisCache().
Redis?
+
In-memory distributed caching system.
Remoting?
+
Legacy communication between .NET applications.
RenderBody vs RenderPage:
+
RenderBody() outputs the content of the child view in
layout. RenderPage() inserts another Razor page inside a view like a
partial.
RenderBody() outputs the content of the child view in
layout. RenderPage() inserts another Razor page inside a view like a
partial.
+
Additional Questions
Request Delegate?
+
A delegate such as RequestDelegate handles HTTP
requests and responses inside middleware.
Resource?
+
A data entity identified by a URI like /users/1.
Resource-Based Authorization?
+
Authorization rules applied based on a specific
resource instance.
Response Compression?
+
Compressing HTTP output for faster response.
Return PartialView()?
+
Returns only partial content without layout.
Return types of an action method:
+
Returns include ViewResult, JsonResult, RedirectResult,
ContentResult, FileResult, and ActionResult.
Return View()?
+
Returns a full view to the browser.
Role of ActionFilters in MVC?
+
ActionFilters allow you to run logic before or after an
action executes. They help in cross-cutting concerns like logging,
authentication, caching, and exception handling. Filters can be applied at
the controller or method level. Examples include: Authorize, HandleError,
and OutputCache.
Role of Configure() method?
+
Defines the request handling pipeline using middleware
like routing, authentication, static files, etc.
Role of ConfigureServices()
+
Used to register services like DI, EF Core, identity,
logging, and custom services.
Role of IHostingEnvironment?
+
Provides environment-specific info like Development,
Production, and staging.
Role of Middleware
+
Authentication, logging, routing, exception handling.
Role of MVC components:
+
Presentation (View) shows data, Abstraction (Model)
handles logic/data, Control (Controller) manages requests and updates.
Role of MVC in AngularJS?
+
MVC helps structure the application for
maintainability. Model stores data, View displays data using HTML, and
Controller updates data. Angular’s two-way binding keeps Model and View
synchronized. It helps in scaling complex front-end applications.
Role of Startup class?
+
It configures application services via
ConfigureServices() and request pipeline via Configure().
Role of WebHost.CreateDefaultBuilder()?
+
Configures default settings like Kestrel, logging,
config, ENV detection.
Role-Based Authorization?
+
Restrict access using roles, e.g.,
[Authorize(Roles="Admin")].
RouteConfig.cs?
+
Contains registration logic for routing in MVC
Framework.
Routes difference in WebForm vs MVC:
+
WebForms use file-based routing, MVC uses pattern-based
routing with controllers and actions.
Routing
+
Maps URLs to controllers and actions using UseRouting()
and MapControllerRoute().
Routing and three segments?
+
Routing is the process of mapping incoming URLs to
controller actions. The default pattern contains three segments:
{controller}/{action}/{id}. It helps in SEO-friendly and user-readable URLs.
Routing carried out in MVC?
+
Routing engine matches the URL with route patterns from
the RouteConfig and executes the mapped controller and action.
Routing in MVC?
+
Routing maps incoming URL requests to specific
controllers and actions.
Routing is done in the MVC pattern?
+
Routing is handled by a RouteConfig.cs file (or
Program.cs in .NET Core). ASP.NET MVC uses pattern matching to map URLs to
controllers. Routes are registered at application startup. Based on the URL,
MVC identifies which controller and action to execute.
Routing is not required?
+
1. Serving static files (images, CSS, JS). 2. Accessing
.axd resource handlers. Routing bypasses these requests automatically. 31)
Features of MVC?
Routing Types
+
Convention-based routing and attribute routing.
Routing?
+
Mapping incoming URLs to controller actions or
endpoints.
Row-Level Security?
+
User can only access specific rows based on rules.
Rules of Razor syntax:
+
Razor starts with @, supports IntelliSense, has clean
HTML mixing, and minimizes closing tags compared to ASPX.
Runtime does ASP.NET Core use?
+
.NET 5/6/7/8 (Unified .NET runtime).
Runtime Identifiers (RID)?
+
RID represents the platform where an app runs (e.g.,
win-x64, linux-arm64). Used for publishing self-contained apps.
Scaffolding?
+
Automatic generation of CRUD code for model and views.
Scope Creep?
+
Unauthorized expansion of delegated access.
Scope in OAuth2?
+
Defines what access the client is requesting.
Scoped lifetime?
+
Creates one instance per client request.
Security & Authorization
+
ASP.NET Core uses policies, role-based access,
authentication middleware, and secure coding to protect resources. Best
practices include HTTPS, input validation, and secure tokens.
Self-Authorization Design?
+
User automatically given access to own resources.
Self-Contained Deployment?
+
The app includes its own .NET runtime. It does not
require .NET to be installed on the host machine.
Send JSON result in MVC?
+
Use return Json(object, JsonRequestBehavior.AllowGet);.
This serializes the object into JSON format. Useful in AJAX-based
applications. It is commonly used in API responses.
Separation of Duties?
+
Critical tasks split among multiple users.
Serialization Libraries?
+
System.Text.Json, Newtonsoft.Json.
Serilog?
+
Third-party structured logging library.
Serverless Computing?
+
Execution model where cloud runs functions without
managing servers.
Server-side validation?
+
Validation performed on server during HTTP request
processing.
Service Lifetimes
+
Transient, Scoped, Singleton.
Service Lifetimes?
+
Singleton, Scoped, Transient.
Session Fixation?
+
Attack that hijacks a valid session.
Session in MVC Core?
+
Stores user state data server-side while maintaining
stateless nature.
Session State Management
+
Uses cookies, TempData, distributed caching, or session
middleware.
Session State?
+
Server-side storage for user data.
Session?
+
Server-side state management storing user data across
requests.
Sessions maintained in MVC?
+
Sessions can be maintained using Session[] variables.
Example: Session["User"] = "John";. ASP.NET uses server-side storage for
session values. Cookies or session identifiers track user session state.
SignalR?
+
Framework for real-time communication like chat, live
updates.
Significance of NonActionAttribute:
+
NonActionAttribute is used in MVC to prevent a public
method inside a controller from being treated as an action method. It tells
the framework not to expose or invoke the method via routing. This is useful
for helper or private logic inside controllers.
Singleton lifetime?
+
One instance shared across application lifetime.
Soft Delete in API?
+
Use IsDeleted filter globally.
Soft Delete?
+
Mark record as deleted instead of physically removing.
Spring MVC?
+
Spring MVC is a Java-based MVC framework used to build
flexible and loosely coupled web applications.
Startup class used for?
+
Configures services and the HTTP request pipeline.
Startup.cs?
+
File configuring middleware, routing, authentication in
MVC Core.
Statelessness?
+
Server stores no client session; each request is
independent.
Static Authorization?
+
Predefined access rules.
Steps in the execution of an MVC project?
+
Request goes to the Routing Engine, which maps it to a
controller and action. The controller executes the required logic and
interacts with the model. A View is selected and rendered to the browser.
Finally, the response is returned to the client.
Stored procedures?
+
Precompiled SQL code stored in the database.
Strong naming?
+
Assigning a unique identity using public/private key
pairs.
Strongly Typed Views
+
These views are bound to a model class using @model.
They improve IntelliSense, compile-time safety, and easier data handling.
Tag Helper in ASP.NET Core?
+
Tag helpers are server-side components that enable C#
code to be used in HTML elements. They make views cleaner and more readable,
especially for forms, routing, and validation. Examples include
asp-controller, asp-route, and asp-validation-for.
Tag Helper?
+
Server-side components used to generate dynamic HTML.
Tag Helpers?
+
Server-side Razor components that generate HTML in .NET
Core MVC.
Task Parallel Library (TPL)?
+
Framework for parallel programming using tasks.
TempData in MVC?
+
TempData stores data temporarily and is used to pass
values across requests, especially during redirects.
TempData used for?
+
Used to pass data across redirects between actions.
TempData: Stores data temporarily across redirects.
+
ViewData: Key-value store for passing data to view.
TempData?
+
Stores data temporarily and persists across redirects.
Base Class Library?
+
Reusable classes for IO, networking, collections,
threading, XML, etc.
Early and late binding?
+
Early binding resolved at compile time, late binding at
runtime.
Main components of .NET Framework?
+
CLR, Base Class Library, ASP.NET, ADO.NET, WPF, WCF.
Themes in ASP.NET application?
+
Themes style pages and controls consistently using CSS,
skin files, and images stored in the App_Themes folder;they can be applied
via Page directive, Web.config, or programmatically to maintain a uniform UI
design.
Themes in ASP.NET:
+
Themes define the UI look and feel of a web
application. They include styles, skins, and images. Useful for consistent
branding across pages.
Threading?
+
Executing multiple tasks concurrently.
Token Authentication?
+
Authentication based on tokens instead of cookies.
Token-Based Authorization?
+
Access granted via tokens like JWT.
Tracing in .NET?
+
Tracing helps debug and analyze runtime behavior. It
displays request details, control hierarchy, and performance info. Tracing
can be enabled at page or application level. It is useful during development
for troubleshooting.
Tracking vs NoTracking?
+
AsNoTracking improves performance for reads.
Transient lifetime?
+
Creates a new instance every time requested.
Two approaches of adding constraints to a route:
+
Constraints can be added using regular expressions or
built-in constraint classes like HttpMethodConstraint.
Two ways to add constraints to a route?
+
1. Using Regular Expressions. 2. Using Parameter
Constraints (like int, guid). They restrict valid route patterns. Helps
avoid ambiguity.
Two ways to add constraints:
+
Using Regex constraints or custom constraint
classes/interfaces.
Common types include: ViewResult JsonResult
RedirectResult ContentResult FileResult Each type corresponds to a different
response format.
Types of Routing?
+
Convention-based and Attribute-based routing.
Types of serialization?
+
Binary, XML, SOAP, JSON.
Unit Testing Controllers
+
Controllers are tested using mock dependencies injected
via constructor. Frameworks like Moq help simulate external services.
Unit Testing in MVC?
+
Testing controllers, models, and logic without running
UI.
Unit Testing?
+
Testing individual code components.
URI vs URL?
+
URI identifies a resource; URL locates it.
URL Rewriting Middleware
+
This middleware modifies request URLs before routing.
It is useful for SEO redirects, legacy URL support, and HTTPS enforcement.
Use MVC in JSP?
+
Use Java Beans as Model, JSP as View, and Servlets as
Controllers. The controller receives requests, interacts with the model, and
forwards output to the view. Ensures clean separation of logic. 35) How MVC
works in Spring?
Use of ActionFilters in MVC?
+
Action filters execute custom logic before or after
Action methods, such as logging, caching, or authorization.
Use of CheckBox in .NET?
+
A CheckBox allows users to select one or multiple
options. It returns true/false based on user selection. It can trigger
events like CheckedChanged. It is widely used in forms and permissions.
Use of default route {resource}.axd/{*pathinfo}?
+
It is used to ignore requests for Web Resource files.
Static resources like scripts and images are handled separately. Prevents
MVC routing from processing system files. Used mainly for performance
optimization.
Use of ng-controller in external files?
+
ng-controller helps load logic defined in a separate
JavaScript file. This separation keeps code modular and manageable. It also
promotes reusability and avoids inline scripts. Used for scalable Angular
applications.
Use of UseIISIntegration?
+
Configures the app to work with IIS as a reverse proxy.
Use of ViewModel:
+
A ViewModel holds data required by the view and may
combine multiple models. It improves separation of concerns.
Use repeater control in ASP.NET?
+
Repeater displays repeated data from data sources like
SQL or Lists. It provides full HTML control without predefined layout. Data
is bound using DataBind() method. Ideal for flexible UI formatting.
Used to handle an error in MVC?
+
MVC uses Exception Filters, HandleErrorAttribute,
custom error pages, and global filters to handle errors. It also supports
logging frameworks for exception tracking.
Using ASP.NET Core APIs from a Class Library
+
Class libraries can reference ASP.NET Core packages and
use dependency injection to access services. Shared logic like validation or
domain models can be placed in the library for reuse.
Using hyperlink:
+
Go to About
Validation in ASP.NET Core
+
Validation uses data annotations and model binding. It
ensures rules are applied once and reused across views and APIs (DRY
principle).
Validation in MVC?
+
Process ensuring user input meets defined rules before
saving.
Various JSON files in ASP.NET Core?
+
appsettings.json, launchSettings.json,
bundleconfig.json, and environment-specific config files.
Various steps to create the request object?
+
MVC parses the incoming HTTP request. It identifies
route data, initializes the Controller and Action. Binding occurs to form
parameters and then the request object is passed.
View Component?
+
Reusable rendering component similar to partial views
but with logic.
View Engine?
+
Component that renders UI from templates.
View in MVC?
+
View is the UI representation of model data shown to
the user.
View Models
+
Custom class containing only data required by the View.
View State?
+
Preserves page and control values across postbacks in
ASP.NET WebForms using a hidden field.
ViewBag?
+
Dynamic data dictionary for passing data from
controller to view.
ViewData: Key-value store for passing data to view.
+
ViewBag: Dynamic wrapper around ViewData.
ViewData?
+
A dictionary-based container to pass data between
controller and view.
ViewEngineResult?
+
Represents result of view engine locating view or
partial.
ViewEngines?
+
Engines that compile and render views like
RazorViewEngine.
ViewImports.cshtml?
+
Registers namespaces, helpers, and tag helpers for
Razor views.
ViewModel?
+
A class combining multiple models or additional data
required by the view.
ViewStart.cshtml?
+
Executes before every view and sets layout page.
ViewStart?
+
_ViewStart.cshtml runs before each view and sets common
settings like layout. It helps avoid repeating configuration in each view.
ViewState?
+
A mechanism in ASP.NET WebForms to preserve page and
control state across postbacks.
WCF bindings?
+
Transport protocols like basicHttpBinding,
wsHttpBinding.
Web API in ASP.NET Core?
+
Framework for building RESTful services.
Web API in ASP.NET?
+
ASP.NET Web API is used to build RESTful services. It
supports formats like JSON and XML. It enables communication between client
and server applications. Web API is lightweight and ideal for mobile and SPA
applications.
Web API vs MVC?
+
MVC returns views while Web API returns JSON/XML data.
Web Farm?
+
Multiple servers hosting the same application.
Web Garden?
+
Multiple worker processes in same application pool.
Web Services in ASP.NET?
+
HTTP-based services using XML/SOAP for cross-platform
communication (.asmx files). They use XML and SOAP protocols for data
exchange. They help build interoperable solutions across platforms. ASP.NET
Web Services expose methods using [.asmx] files.
Web.config file in ASP?
+
Web.config is an XML configuration file for ASP.NET
applications. It stores settings like database connections, security, and
session management. It controls application-level behavior without
recompiling code. Multiple Web.config files can exist for different
directories.
Web.config?
+
Configuration file used in .NET MVC Framework
applications.
WebListener?
+
A Windows-only web server used when advanced Windows
authentication features are required.
WebParts:
+
WebParts allow building customizable and personalized
pages. Users can rearrange, edit, or hide parts of a page. Useful in
dashboards and portal applications.
WebSocket?
+
Persistent full-duplex connection used in real-time
communication.
Startup.cs in ASP.NET Core 6.0?
+
In .NET 6+, minimal hosting model removes Startup.cs.
Configuration like services, routing, and middleware is now placed directly
in Program.cs.
API keys less secure?
+
No expiration and easily leaked.
Choose .NET for development?
+
.NET provides high performance, strong ecosystem,
cross-platform support, built-in DI, cloud readiness, and great tooling like
Visual Studio and GitHub Copilot. It's ideal for enterprise, web, mobile,
and microservice applications.
Access Tokens expire?
+
To reduce security risks and limit exposed lifetime.
Not store authorization logic in UI?
+
Client-side can be tampered; authorization must be
server-side.
Use ASP.NET Core?
+
Fast, scalable, cloud-ready, open-source, modular
design, and ideal for Microservices and container deployments.
Validate authorization on every request?
+
To ensure permissions haven't changed.
Windows Authentication?
+
Uses Windows credentials for login.
Windows Authorization?
+
Authorization using Windows identity and AD groups.
Worker Services?
+
Worker Services run background jobs without UI. They
are ideal for scheduled tasks, queue processing, and microservice background
jobs.
WPF MVVM Pattern?
+
Model-View-ViewModel for UI separation.
Wroot folder in ASP.NET Core?
+
Public web root for static files (CSS, JS, images);
files outside are not directly accessible.
XACML?
+
Authorization standard using XML-based policies.
XSS Prevention
+
XSS occurs when user input is executed as script.
ASP.NET Core prevents this through automatic HTML encoding and validation.
XSS?
+
Cross-site scripting via malicious scripts.
Zero Trust?
+
Always verify identity regardless of network.
100+ DevOps Essential concepts
+
Cloud Computing
+
#AWS: Amazon's cloud computing platform that provides a mix of
infrastructure as a service (IaaS), platform as a service (PaaS), and packaged
software as a service (SaaS) offerings. #Azure: Microsoft's public cloud computing
platform. #GCP: Google's suite of cloud computing services that runs on the same
infrastructure that Google uses internally for its end-user products.
Performance Testing
+
Testing conducted to determine how a system performs in terms
of responsiveness and stability under a particular workload.
Capacity Planning
+
The process of determining the production capacity needed by an
organization to meet changing demands for its products.
YAML, JSON
+
These are data serialization languages often used for
configuration files and in applications where data is being stored or transmitted. A
software emulation of a physical computer, running an operating system and
applications just like a physical computer.
Hybrid Cloud
+
A cloud computing environment that uses a mix of on-premises,
private cloud, and third-party, public cloud services with orchestration between the
two platforms.
Helm in Kubernetes
+
Helm is a package manager for Kubernetes that allows developers
and operators to more easily package, configure, and deploy applications and
services onto Kubernetes clusters.
UI Design
+
The process of making interfaces in software or computerized
devices with a focus on looks or style.
Hexagonal Architecture
+
Also known as Ports and Adapters, this is a design pattern that
favors the separation of concerns and loose coupling.
A/B Testing
+
A randomized experiment with two variants, A and B, which are
the control and variation in the controlled experiment.
Blockchain
+
#_ Blockchain is a type of distributed ledger technology that
maintains a growing list of records, called blocks, that are linked using
cryptography. Each block contains a cryptographic hash of the previous block, a
timestamp, and transaction data. #_ The design of a blockchain is inherently
resistant to data modification. Once recorded, the data in any given block cannot be
altered retroactively without alteration of all subsequent blocks. This makes
blockchain technology suitable for the recording of events, medical records,
identity management, transaction processing, and documenting provenance, among other
things.
Progressive Delivery
+
A methodology that focuses on delivering new functionality
gradually to prevent issues and minimize risk.
Cloud-native Technologies
+
Technologies that empower organizations to build and run
scalable applications in modern, dynamic environments such as public, private, and
hybrid clouds.
Vulnerability Scanning
+
The process of inspecting potential points of exploit on a
computer or network to identify security holes.
CI/CD
+
#Continuous Integration (CI): The practice of merging all
developers' working copies to a shared mainline several times a day.
Version Control Systems
+
#Git: A distributed version control system for tracking changes
in source code during software development.
Test Automation
+
#_Test Automation involves the use of special software
(separate from the software being tested) to control the execution of tests and the
comparison of actual outcomes with predicted outcomes. Automated testing can extend
the depth and scope of tests to help improve software quality.
Containerization
+
#Docker: An open-source platform that automates the deployment,
scaling, and management of applications.
Monitoring and Logging
+
The process of checking the status or progress of something
over time and
DevOps Metrics
+
Key Performance Indicators (KPIs) used to evaluate the
effectiveness of a
Security in DevOps (DevSecOps)
+
The philosophy of integrating security practices within the
DevOps process.
GitOps
+
A way of implementing Continuous Deployment for cloud native
applications,
Declarative System
+
In a declarative system, the desired system state is described
in a file (or set of files), and it's the system's responsibility to achieve this
state.
Convergence
+
In the context of GitOps, convergence refers to the process of
the system moving towards the desired state, as described in the Git repository.
When changes are made to the repository, automated processes reconcile the current
system state with the desired state.
Reconciliation Loops
+
In GitOps, reconciliation loops are the continuous cycles of
checking the current system state and applying changes to converge towards the
desired state. These are often managed by Kubernetes operators or controllers.
Configuration Drift
+
Configuration drift refers to the phenomenon where environments
become inconsistent over time due to manual changes or updates. GitOps helps to
avoid this by ensuring all changes are made in the Git repository and automatically
applied to the system.
Infrastructure as Code (IaC)
+
While this isn't exclusive to GitOps, IaC is a key component of
the GitOps approach. Infrastructure as Code involves managing and provisioning
computing resources through machine-readable definition files, rather than manual
hardware configuration or interactive configuration tools.
Canary Deployments
+
Canary deployments involve releasing new versions of a service
to a small subset of users before rolling it out to all users. This approach, often
used in conjunction with GitOps, allows teams to test and monitor the new version in
a live environment with real users, reducing the risk of a full-scale deployment.
Serverless Architecture
+
A software design pattern where applications are hosted by a
third-party service, eliminating the need for server software and hardware
management.
Scripting & Automation
+
The ability to write scripts in languages like Bash and Python
to automate repetitive tasks.
Build Tools
+
Tools that automate the creation of executable applications
from source code (e.g., Maven, Gradle, and Ant).
Load Balancing
+
The process of distributing network traffic across multiple
servers to ensure no single server bears too much demand.
Web Services
+
Services used by the network to send and receive data (e.g.,
REST and SOAP).
Database Management
+
Understanding databases, their management, and their
interaction with applications is a key skill (e.g., MySQL, PostgreSQL, MongoDB).
Scalability
+
The capability of a system to grow and manage increased demand.
Disaster Recovery
+
The area of security planning that deals with protecting an
organization from
Incident Management
+
The process to identify, analyze, and correct hazards to
prevent a future re-occurrence.
Documentation
+
Creating high-quality documentation is a key skill for any
DevOps engineer.
Chaos Engineering
+
The discipline of experimenting on a system to build confidence
in the
Access Management
+
The process of granting authorized users the right to use a
service, while
API Management
+
The process of creating, publishing, documenting, and
overseeing APIs in a
🧱Architecture Design
+
The practice of designing the overall architecture of a
software system.
Tagging Strategy
+
A strategy for tagging resources in cloud environments to keep
track of
Observability
+
The ability to infer the internal states of a system based on
the outputs it produces.
Toolchain Management
+
The process of selecting, integrating, and managing the right
set of tools to support collaborative development, build, test, and release.
On-call Duty
+
The responsibility of engineers to be available to troubleshoot
and resolve issues that arise in a production environment.
Feature Toggles
+
A technique that allows teams to modify system behavior without
changing code.
License Management
+
The process of managing and optimizing the purchase,
deployment, maintenance, utilization, and disposal of software applications within
an organization.
Docker Images
+
Docker images are lightweight, stand-alone, executable packages
that include everything needed to run a piece of software.
Kubernetes Pods
+
A pod is the smallest and simplest unit in the Kubernetes
object model that you create or deploy.
Deployment Strategies
+
Techniques for updating applications, such as rolling updates,
blue/green deployments, or canary releases.
Disk Imaging
+
The process of copying the contents of a computer hard disk
into a data file
Knowledge Sharing
+
A key aspect of DevOps culture, involving the sharing of
knowledge and best practices across the organization.
Cloud Services Models
+
Different models of cloud services, including IaaS, PaaS, and
SaaS.
Idle Process Management
+
The management and removal of idle processes to free up
resources.
Service Mesh
+
A dedicated infrastructure layer for handling
service-to-service communication, often used in microservices architecture.
Project Management Tools
+
Tools used for project management, like Jira, Trello, or Asana.
Proxy Servers
+
Servers that act as intermediaries for requests from clients
seeking resources from other servers.
Cloud Migration
+
The process of moving data, applications, and other business
elements from an
Secure Sockets Layer (SSL)
+
A standard security technology for establishing an encrypted
link between a server and a client.
User Experience (UX)
+
The process of creating products that provide meaningful and
relevant experiences to users.
Reverse Proxy
+
A type of proxy server that retrieves resources on behalf of a
client from
Anomaly Detection
+
The identification of rare items, events, or observations which
raise suspicions by differing significantly from the majority of the data.
Site Reliability Engineering (SRE)
+
#_ A discipline that incorporates aspects of software
engineering and applies them to infrastructure and operations problems. The main
goals are to create scalable and highly reliable software systems. SRE is a role
that was originated at Google to bridge the gap between development and operations
by applying a software engineering mindset to system administration topics. SREs use
software as a tool to manage systems, solve problems, and automate operations tasks.
Autoscaling
+
A cloud computing feature that automatically adds or removes
compute resources depending upon actual usage.
SSH (Secure Shell)
+
A cryptographic network protocol for operating network services
securely over an unsecured network.
Problem Solving
+
The process of finding solutions to difficult or complex
issues.
IT Service Management (ITSM)
+
The activities that are performed by an organization to design,
plan, deliver, operate and control information technology (IT) services offered to
customers.
Peer Reviews
+
The evaluation of work by one or more people with similar
competencies who are not the people who produced the work.
Data Analysis
+
The process of inspecting, cleansing, transforming, and
modeling data with the goal of discovering useful information, informing
conclusions, and supporting decision-making.
Content Delivery Network (CDN)
+
A geographically distributed network of proxy servers and their
data centers.
Canary Deployment
+
A pattern for rolling out releases to a subset of users or
servers.
Messaging Systems
+
Communication systems for exchanging messages between
distributed systems (e.g., RabbitMQ, Apache Kafka).
OAuth
+
An open standard for access delegation, commonly used as a way
for Internet users to grant websites or applications access to their information on
other websites but without giving them the passwords.
Identity and Access Management (IAM)
+
A framework of business processes, policies and technologies
that facilitates
NoSQL Databases
+
Database systems designed to handle large volumes of data that
do not fit the traditional relational model (e.g., MongoDB, Cassandra).
Serverless Functions
+
Also known as Functions as a Service (FaaS), these are a type
of cloud service that allows you to execute specific functions in response to events
(e.g., AWS Lambda).
ETL (Extract, Transform, Load)
+
A data warehousing process that uses batch processing to help
business users analyze and report on data relevant to their business focus.
Data Warehousing
+
The process of constructing and using a data warehouse, which
is a system used for reporting and data analysis.
Big Data
+
Extremely large data sets that may be analyzed computationally
to reveal patterns, trends, and associations, especially relating to human behavior
and interactions.
Edge Computing
+
A distributed computing paradigm that brings computation and
data storage closer to the location where it is needed, to improve response times
and save bandwidth.
Log Analysis
+
The process of reviewing and evaluating log files from various
sources to identify trends or potential security threats.
Dashboarding
+
The process of creating a visual representation of data, which
can be used to analyze and make decisions.
Key Management
+
The administrative control of creating, distributing, using,
storing, and
HTTPS (HTTP Secure)
+
An extension of the Hypertext Transfer Protocol. It is used for
secure communication over a computer network, and is widely used on the Internet.
Web Application Firewall (WAF)
+
A firewall that monitors, filters, or blocks data packets as
they travel to and from a web application.
Single Sign-On (SSO)
+
An authentication scheme that allows a user to log in with a
single ID and
Blue-Green Deployment
+
A release management strategy that reduces downtime and risk by
running two identical production environments called Blue and Green.
Fog Computing
+
A decentralized computing infrastructure in which data,
compute, storage, and applications are distributed in the most logical, efficient
place between the data source and the cloud.
RFC (Request for Comments)
+
A type of publication from the technology community that
describes methods, behaviors, research, or innovations applicable to the working of
the Internet and Internet-connected systems.
REST (Representational State Transfer)
+
An architectural style for designing networked applications,
often used in
Secrets Management
+
The process of managing digital authentication credentials like
passwords, keys, and tokens.
HSM (Hardware Security Module)
+
A physical computing device that safeguards and manages digital
keys, performs encryption and decryption functions for digital signatures, strong
authentication and other cryptographic functions.
Microservices
+
An architectural style that structures an application as a
collection of
Benchmarking
+
The practice of comparing business processes and performance
metrics to
Cross-Functional Collaboration
+
Collaboration between different functional areas within an
organization to achieve common goals.
ADO.NET
+
Access data from DataReader?
+
Call ExecuteReader() and iterate rows using Read(). Access
values using index or column names. It is forward-only and read-only.
ADO.NET Components.
+
Key components are:, · Connection, · Command, · DataReader, ·
DataAdapter, · DataSet, Each helps in performing database operations efficiently.
ADO.NET Data Provider?
+
A Data Provider is a set of classes (Connection, Command,
DataAdapter, DataReader) that interacts with a specific database like SQL Server,
Oracle, or OleDb.
Supports disconnected model, XML integration, scalable
architecture, and high performance. Works with multiple data sources and provides
secure parameterized queries.
Aggregate in LINQ?
+
Perform operations like Sum, Count, Min, Max, Average on
collections.
Authentication techniques for SQL Server
+
Common authentication types are Windows Authentication, SQL
Server Authentication, and Mixed Mode Authentication.
Benefits of ADO.NET?
+
Scalable, secure, supports XML, disconnected architecture,
multiple DB providers.
Best method to get two values
+
Use ExecuteReader() or stored procedure returning multiple
columns.
BindingSource class in ADO.NET?
+
BindingSource acts as a mediator between UI and data. It
simplifies sorting, filtering, and navigation with data controls like DataGridView.
Boxing/unboxing?
+
Boxing: value type → object, Unboxing: object → value type
Can multiple tables be loaded into a DataSet?
+
Yes, multiple tables can be loaded into a DataSet using
DataAdapter.Fill(), and relationships can be defined between them.
Classes available in System.Data Namespace
+
Includes DataSet, DataTable, DataRow, DataColumn, DataRelation,
Constraint, and DataView.
Classes in System.Data.Common Namespace
+
Includes DbConnection, DbCommand, DbDataAdapter, DbDataReader,
and DbParameter, offering provider-independent access.
Clear(), Clone(), Copy() in DataSet?
+
Clear(): removes all data, keeps schema, Clone(): copies schema
only, Copy(): copies schema + data
Clone() method of DataSet?
+
Clone() copies the structure of a DataSet including tables,
schemas, and constraints. It does not copy data. It is used when the same schema is
needed for new datasets.
Command object in ADO.NET?
+
Command object represents an SQL statement or stored procedure
to execute against a data source.
Commands used with DataAdapter
+
DataAdapter uses SelectCommand, InsertCommand, UpdateCommand,
and DeleteCommand for CRUD operations. These commands define how data is fetched and
updated between DataSet and database.
Components of ADO.NET Data Provider
+
ADO.NET Data Provider consists of four main objects:
Connection, Command, DataReader, and DataAdapter. The Connection connects to the
database, Command executes SQL, DataReader retrieves forward-only data, and
DataAdapter fills DataSets and updates changes.
Concurrency in EF?
+
Manages simultaneous access to data using Optimistic or
Pessimistic concurrency.
Connection object in ADO.NET?
+
Connection object represents a connection to a data source and
is used to open and close connections.
Connection object properties and members?
+
Common properties include ConnectionString, State, Database,
ServerVersion, and DataSource. Methods include Open(), Close(), CreateCommand(), and
BeginTransaction().
Connection Object?
+
The connection object establishes communication between
application and database. It includes connection strings and manages session
initiation and termination.
Connection Pooling in ADO.NET?
+
Connection pooling reuses existing database connections instead
of creating new ones repeatedly. It improves performance and reduces overhead by
efficiently managing active and idle connections.
Connection timeout in ADO.NET?
+
Connection timeout specifies the time to wait while
establishing a connection before throwing an exception.
ConnectionString?
+
Defines DB server, database name, credentials, and options for
establishing connection.
Copy() method of DataSet?
+
Copy() creates a duplicate DataSet including structure and
data. It is useful when preserving a dataset snapshot.
Create and Manage Connections in ADO.NET?
+
Use classes like SqlConnection with a valid connection string.
Methods such as Open() and Close() handle connection lifecycle, often used inside
using(){} blocks.
Create SqlConnection?
+
SqlConnection con = new SqlConnection("connectionString");,
con.Open();
DAO?
+
DAO (Data Access Object) is a design pattern used to abstract
and encapsulate database access logic. It helps separate persistence logic from
business logic.
Data Providers in ADO.NET
+
Examples include SqlClient, OleDb, OracleClient, Odbc, and
EntityClient.
DataAdapter and its Property?
+
DataAdapter is used to transfer data between database and
DataSet. Properties include SelectCommand, InsertCommand, UpdateCommand, and
DeleteCommand.
DataAdapter in ADO.NET?
+
DataAdapter acts as a bridge between the database and DataSet.
It uses select, insert, update, and delete commands to sync data between memory and
the database.
DataAdapter?
+
Acts as a bridge between DataSet and DB, provides methods for
Fill() and Update().
DataColumn, DataRow, DataTable relationship?
+
DataTable holds rows and columns; DataRow is a record;
DataColumn defines schema.
DataReader in ADO.NET?
+
DataReader is a forward-only, read-only stream of data from a
data source, optimized for performance.
DataReader Object?
+
A fast, forward-only, read-only way to retrieve data from a
database. Works in connected mode.
DataReader?
+
Forward-only, read-only, fast access to database records.
DataRelation Class?
+
It establishes parent-child relational mapping between
DataTables inside a DataSet, similar to foreign keys in a database.
DataSet in ADO.NET?
+
DataSet is an in-memory, disconnected collection of data
tables, relationships, and constraints.
Dataset Object?
+
A disconnected, in-memory collection of DataTables supporting
relationships and XML.
DataSet replaces ADO Recordset?
+
Dataset provides disconnected, XML-based storage, supporting
multiple tables, relationships, and offline editing. Unlike Recordset, it does not
require a live database connection.
DataSet?
+
An in-memory representation of tables, relationships, and
constraints, supports disconnected data.
DataTable in ADO.NET?
+
A DataTable stores rows and columns similar to a database
table. It exists in memory and can be part of a DataSet, supporting constraints,
relations, and indexing.
DataView in ADO.NET?
+
DataView provides a customizable view of a DataTable, allowing
sorting, filtering, and searching.
DataView?
+
DataView provides filtered and sorted views of a DataTable
without modifying original data.
Default CommandTimeout value
+
The default value of CommandTimeout is 30 seconds.
Define DataSet structure?
+
A DataSet stores relational data in memory as tables,
relations, and constraints. It can contain multiple DataTables and supports XML
schema definitions using ReadXmlSchema() and WriteXmlSchema().
AcceptChanges() and RejectChanges() in DataSet?
+
AcceptChanges() commits changes to DataSet; RejectChanges()
rolls back changes.
AcceptChanges() and RejectChanges()?
+
AcceptChanges commits changes; RejectChanges reverts changes to
original state.
ADO and ADO.NET?
+
ADO is COM-based and works with connected architecture; ADO.NET
is .NET-based and supports both connected and disconnected architecture.
BeginTransaction() and EnlistTransaction()?
+
BeginTransaction starts a local transaction; EnlistTransaction
enrolls the connection in a distributed transaction.
Close() and Dispose() on SqlConnection?
+
Close() closes the connection; Dispose() releases all resources
used by the connection object.
CommandBehavior.CloseConnection and default behavior?
+
CloseConnection automatically closes connection when DataReader
is closed; default keeps connection open.
CommandType.Text and CommandType.StoredProcedure?
+
CommandType.Text executes raw SQL queries;
CommandType.StoredProcedure executes stored procedures.
Connected and disconnected architecture in ADO.NET?
SqlConnection is specific to SQL Server; OleDbConnection is
generic and can connect to multiple databases via OLE DB provider.
SqlDataAdapter and OleDbDataAdapter?
+
SqlDataAdapter is SQL Server-specific; OleDbDataAdapter works
with OLE DB providers for multiple databases.
SqlDataAdapter and SqlDataReader?
+
DataAdapter works with disconnected DataSet; DataReader is
connected and forward-only.
SqlDataAdapter.Fill() and SqlDataAdapter.FillSchema()?
+
Fill() loads data; FillSchema() loads table structure including
constraints.
SqlDataReader and SqlDataAdapter?
+
SqlDataReader is connected, fast, and read-only; SqlDataAdapter
works in disconnected mode with DataSet.
Synchronous and asynchronous ADO.NET operations?
+
Synchronous operations block until complete; asynchronous
operations run in background without blocking.
TableMapping and ColumnMapping?
+
TableMapping maps source table names to DataSet tables;
ColumnMapping maps source columns to DataSet columns.
Typed and untyped DataSet?
+
Typed DataSet has a predefined schema with compile-time checks;
untyped is generic and dynamic.
DiffBet ADO and ADO.NET.
+
ADO is connected and recordset-based, whereas ADO.NET supports
disconnected architecture using DataSet. ADO.NET is XML-based and works well with
distributed applications.
DiffBet ADO and ADO.NET?
+
ADO uses connected model and Recordsets. ADO.NET supports
disconnected model, XML, and multiple tables.
DiffBet Command and CommandBuilder
+
Command executes SQL statements, while CommandBuilder
automatically generates SQL (Insert, Update, Delete) commands for DataAdapters.
DiffBet connected and disconnected model?
+
Connected: DataReader, requires live DB connection.,
Disconnected: DataSet, DataAdapter, works offline.
DiffBet DataReader and DataAdapter?
+
DataReader is forward-only, read-only; DataAdapter fills
DataSet and supports disconnected operations.
DiffBet DataReader and DataSet.
+
· DataReader: forward-only, read-only, connected model, high
performance., · DataSet: in-memory collection, disconnected model, supports
navigation and editing.
DiffBet DataReader and Dataset?
+
DataReader is fast, connected, read-only; Dataset is
disconnected, editable, and supports multiple tables.
DiffBet DataSet and DataReader.
+
(Already answered in Q5, summarized above.)
DiffBet DataSet and Recordset?
+
DataSet is disconnected, supports multiple tables and
relationships., Recordset is connected and read-only or updatable depending on type.
DiffBet Dataset.Clone and Dataset.Copy
+
Clone() copies only the schema of the DataSet without data.
Copy() duplicates both the schema and data, creating a full dataset replica.
Scalar: single value, Reader: forward-only rows, NonQuery:
update/delete/insert.
DiffBet Fill() and Update()?
+
Fill() loads data from DB to DataSet; Update() writes changes
back to DB.
DiffBet IQueryable and IEnumerable?
+
IQueryable: server-side execution, LINQ to SQL/Entities,
IEnumerable: client-side, in-memory
DiffBet OLEDB and SQLClient Providers
+
OLEDB provider works with multiple data sources like Access,
Oracle, and Excel, while SQLClient is optimized specifically for SQL Server.
SQLClient offers better speed, security, and support for SQL Server features like
stored procedures and transactions.
Difference: Response.Expires vs Response.ExpiresAbsolute
+
Expires specifies duration in minutes. ExpiresAbsolute sets
exact expiration date/time.
Different Execute Methods in ADO.NET
+
Key execution methods include ExecuteReader() for row data,
ExecuteScalar() for a single value, ExecuteNonQuery() for insert/update/delete
operations, and ExecuteXmlReader() for XML data.
Disconnected data?
+
Disconnected data allows retrieving, modifying, and working
with data without continuous DB connection. DataSet and DataTable support this
model.
Dispose() in ADO.NET?
+
Releases unmanaged resources like DB connections, commonly used
with using block.
Do we use stored procedures in ADO.NET?
+
Yes, stored procedures can be executed using the Command object
by setting CommandType.StoredProcedure.
EF Migration?
+
Updates DB schema as models evolve without losing data.
ExecuteNonQuery()?
+
Executes insert, update, or delete commands and returns
affected row count.
ExecuteReader()?
+
Executes a query and returns a DataReader for reading rows
forward-only.
ExecuteScalar()?
+
Executes a query that returns a single value (first column of
first row).
DataTable stores rows and columns of data. DataRow represents a
single record, while DataColumn defines the schema (fields). Together they form
structured tabular data.
Explain ExecuteReader().
+
ExecuteReader returns a DataReader object to read result sets
row-by-row in forward-only mode, ideal for performance in large data retrieval.
Explain ExecuteXmlReader?
+
ExecuteXmlReader is used with SQL Server to read XML data
returned by a command. It returns an XmlReader object that allows forward-only
streaming of XML. It is useful when retrieving XML documents from queries or stored
procedures.
Explain OleDbDataAdapter Command Properties with Example?
+
OleDbDataAdapter has properties like SelectCommand,
InsertCommand, UpdateCommand, and DeleteCommand. These commands define SQL
operations for reading and updating data. Example:, adapter.SelectCommand = new
OleDbCommand("SELECT * FROM Students", connection);
Explain the Clear() method of DataSet?
+
Clear() removes all rows from all DataTables within the
DataSet. The structure remains intact, but data is deleted. It is useful when
reloading fresh data.
Explain the ExecuteScalar method in ADO.NET?
+
ExecuteScalar executes a SQL command and returns a single
scalar value. It is commonly used for aggregate queries like COUNT(), MAX(), MIN(),
or retrieving a single field. It improves performance as it does not return rows or
a dataset. It returns the first column of the first row.
Features of ADO.NET?
+
Disconnected model, XML support, DataReader, DataSet,
DataAdapter, object pooling.
GetChanges() in DataSet?
+
Returns modified rows (Added, Deleted, Modified) from DataSet
for update operations.
GetChanges()?
+
GetChanges() returns a copy of DataSet with only changed rows
(Added, Deleted, Modified). Useful for updating only modified records.
HasChanges() in DataSet?
+
Checks if DataSet has any changes since last load or accept
changes.
HasChanges() method of DataSet?
+
HasChanges() checks if the DataSet contains modified, deleted,
or new rows. It returns true if changes exist, helping detect update needs.
Important Classes in ADO.NET.
+
Key classes include SqlConnection, SqlCommand, SqlDataReader,
SqlDataAdapter, DataSet, DataTable, and SqlParameter.
Is it possible to edit data in Repeater control?
+
No, Repeater does not provide built-in editing support like
GridView.
Keyword to accept variable parameters
+
The keyword params is used to accept a variable number of
arguments in C#.
Layers of ADO.NET
+
The two layers are Connected Layer (Connection, Command,
DataReader) and Disconnected Layer (DataSet, DataTable, DataAdapter).
Lazy vs eager loading in EF?
+
Lazy: loads related entities on demand, Eager: loads with query
using Include()
LINQ deferred execution?
+
Query runs only when enumerated (foreach, ToList()).
Main components of ADO.NET?
+
Connection, Command, DataReader, DataSet, DataAdapter,
DataTable, and DataView.
Method in OleDbAdapter to populate dataset
+
The method is Fill(), used to load records into
DataSet/DataTable.
Method in OleDbDataAdapter populates a dataset with records?
+
The Fill() method of OleDbDataAdapter populates a DataSet or
DataTable with data. It executes the SELECT command and loads the returned rows into
the dataset for disconnected use.
Method to execute SQL returning single value
+
The method is ExecuteScalar(), which returns the first column
of the first row.
Method used to read XML daily
+
The Read() or Load() methods using XmlReader or XDocument are
used to process XML files.
Method used to sort data
+
Sorting can be done using DataView.Sort property.
Methods of DataSet.
+
Common methods include AcceptChanges(), RejectChanges(),
ReadXml(), WriteXml(), and GetChanges() for data manipulation and synchronization.
Methods of XML DataSet Object
+
Common methods include ReadXml(), WriteXml(), ReadXmlSchema(),
and WriteXmlSchema(), which allow reading and writing XML data and schema.
Methods under SqlCommand
+
Common methods include ExecuteReader(), ExecuteScalar(),
ExecuteNonQuery(), ExecuteXmlReader(), Cancel(), Prepare() and ExecuteAsync() for
asynchronous calls.
Namespaces for Data Access.
+
Common namespaces:, · System.Data, · System.Data.SqlClient, ·
System.Data.OleDb
Namespaces used in ADO.NET?
+
Common namespaces:, · System.Data, · System.Data.SqlClient, ·
System.Data.OleDb
Object used to add relationship
+
DataRelation object is used to create relationships between
DataTables.
Optimistic concurrency in ADO.NET?
+
Optimistic concurrency allows multiple users to access data and
checks for conflicts only when updating.
OrderBy/ThenBy in LINQ?
+
Sorts collection first by OrderBy, then further sorting with
ThenBy.
Parameterized query in ADO.NET?
+
A parameterized query uses parameters to prevent SQL injection
and pass values safely.
Parameterized query?
+
Prevents SQL injection and allows passing parameters safely in
SqlCommand.
Parameters in ADO.NET?
+
Parameters are used in parameterized queries or stored
procedures to prevent SQL injection and pass values securely.
Pessimistic concurrency in ADO.NET?
+
Pessimistic concurrency locks data while a user is editing to
prevent conflicts.
Preferred method for executing SQL with parameters?
+
Use Parameterized queries with SqlCommand and Parameters
collection. This prevents SQL injection and handles data safely.
The OleDb provider is used to connect to multiple heterogeneous
databases like MS Access, Excel, and Oracle.
RowVersion in ADO.NET?
+
RowVersion represents the state of a DataRow (Original,
Current, Proposed) for concurrency control.
SqlCommand Object?
+
The SqlCommand object executes SQL queries and stored
procedures against a SQL Server database. It supports methods like ExecuteReader(),
ExecuteScalar(), and ExecuteNonQuery().
SqlCommand?
+
Executes SQL queries, commands, and stored procedures on a
database.
SqlCommandBuilder?
+
SqlCommandBuilder auto-generates Insert, Update, and Delete
commands for a DataAdapter based on a select query. It reduces manual SQL writing.
SqlTransaction in ADO.NET?
+
SqlTransaction allows executing multiple commands as a single
transaction with commit or rollback.
SqlTransaction?
+
SqlTransaction ensures multiple operations execute as a single
unit. If any operation fails, the entire transaction can be rolled back.
Stop a running thread?
+
Threads can be stopped using Thread.Abort(), CancellationToken,
or cooperative flag-based termination (recommended).
Strongly typed DataSet?
+
Strongly typed DataSet has a predefined schema and provides
compile-time checking of tables and columns.
System.Data Namespace Class.
+
System.Data namespace provides classes for working with
relational data. It includes DataTable, DataSet, DataRelation, DataColumn, and
connection-related classes.
TableMapping in ADO.NET?
+
TableMapping maps source table names from a DataAdapter to
destination DataSet table names.
Transaction in ADO.NET?
+
A transaction is a set of operations executed as a single unit,
ensuring ACID properties.
Transactions and Concurrency in ADO.NET?
+
Transactions ensure multiple database operations execute as a
unit (commit/rollback). Concurrency manages simultaneous access using locking or
optimistic/pessimistic control.
Transactions in ADO.NET?
+
Ensures a set of operations execute as a unit; rollback occurs
on failure.
Two Fundamental Objects in ADO.NET.
+
· Connection Object, · Command Object
Two important ADO.NET objects?
+
DataReader for connected model and DataSet for disconnected
model.
Typed vs. Untyped Dataset
+
Typed DataSet has predefined schema with IntelliSense support.
Untyped DataSet does not have fixed schema and works with dynamic tables.
Use of connection object?
+
Creates a link to the database and opens/closes transactions
and commands.
Use of DataSet Object.
+
A DataSet stores multiple tables in memory, supports XML
formatting, relational mapping, and offline work. Changes can later be synchronized
with the database via DataAdapter.
Use of DataView
+
DataView provides a filtered, sorted view of a DataTable
without modifying actual data. It supports searching, sorting, and binding to UI
controls.
Iterative development improves the product through repeated
cycles based on feedback.
Iterative vs incremental development?
+
Iterative improves existing functionality, while incremental
delivers new functionality in parts.
Agile increment?
+
An increment is the sum of completed work at the end of a
sprint that meets the Definition of Done.
Agile be used?
+
Agile is best used when requirements evolve and frequent
customer feedback is required.
Agile be avoided?
+
Avoid Agile in fixed-scope, fixed-budget, or highly regulated
projects with minimal change.
Key success factors of Agile?
+
Collaboration, empowered teams, clear vision, adaptive
planning, and iterative delivery.
Challenges in Agile development?
+
Unclear requirements, dependencies, cultural resistance, and
estimation challenges.
Common obstacles to Agile adoption?
+
Resistance to change, lack of training, poor communication, and
legacy constraints.
Four values of the Agile Manifesto?
+
Individuals and interactions over processes and tools, working
software over comprehensive documentation, customer collaboration over contract
negotiation, and responding to change over following a plan.
“individuals and interactions over processes and tools” mean?
+
It emphasizes people and communication as more important than
rigid processes or tools.
“working software over comprehensive documentation” mean?
+
It prioritizes delivering functional software rather than
excessive documentation.
“customer collaboration over contract negotiation” mean?
+
It focuses on continuous stakeholder involvement instead of
strict contractual boundaries.
“responding to change over following a plan” mean?
+
It values adaptability to change rather than strictly sticking
to predefined plans.
Principles are defined in Agile?
+
There are 12 principles defined in Agile.
First principle of Agile?
+
The highest priority is to satisfy the customer through early
and continuous delivery of valuable software.
Welcoming change mean in Agile?
+
Agile welcomes changing requirements, even late in development,
to deliver customer value.
Frequent delivery mean in Agile?
+
Delivering working software frequently in short time frames.
Collaboration in Agile principles emphasize?
+
Close, daily collaboration between business stakeholders and
developers.
Motivated individuals in Agile principles?
+
Teams should be built around motivated individuals and trusted
to get the job done.
Working software as a measure of progress mean?
+
Progress is measured by functional software rather than
documentation or plans.
Sustainable development mean in Agile?
+
Teams should maintain a constant pace indefinitely without
burnout.
Technical excellence mean in Agile?
+
Continuous focus on good design and technical quality enhances
agility.
Simplicity mean in Agile principles?
+
Maximizing the amount of work not done is essential.
Self-organizing teams in Agile?
+
Teams that decide how best to accomplish work without external
direction.
Regular reflection mean in Agile?
+
Teams regularly reflect on how to become more effective and
adjust behavior.
Continuous improvement in Agile principles?
+
Ongoing inspection and adaptation to improve processes and
outcomes.
Common types of Agile frameworks?
+
Scrum, Kanban, XP (Extreme Programming), Lean, SAFe, Crystal,
LeSS, Nexus, and Spotify model.
Kanban?
+
Kanban is an Agile framework focused on visualizing workflow
and enabling continuous delivery using WIP limits.
Extreme Programming (XP)?
+
XP is an Agile framework emphasizing technical practices like
TDD, pair programming, and continuous integration.
Lean in Agile?
+
Lean focuses on eliminating waste, optimizing flow, and
delivering value efficiently.
Crystal framework?
+
Crystal is a family of Agile methodologies focused on people,
interaction, and project size.
Scrum be used?
+
Scrum is best used for projects with evolving requirements and
iterative delivery needs.
Kanban be used?
+
Kanban is ideal for maintenance, support, DevOps, and
continuous flow-based work.
Scrum vs Kanban usage difference?
+
Scrum is sprint-based, while Kanban is continuous and
flow-based.
Agile vs Scrum?
+
Agile is a mindset and methodology, while Scrum is a specific
framework under Agile.
Agile vs Lean?
+
Agile focuses on iterative development, while Lean focuses on
waste reduction and process optimization.
Agile vs SAFe?
+
Agile applies to individual teams, while SAFe scales Agile
across large organizations.
Role of frameworks in Agile?
+
Frameworks provide structure to apply Agile values and
principles effectively.
Main roles in Scrum?
+
Product Owner, Scrum Master, and Development Team are the three
main Scrum roles.
Responsibilities of a Product Owner?
+
Managing the product backlog, prioritizing items, defining
product vision, and ensuring value delivery.
Responsibilities of a Scrum Master?
+
Facilitating ceremonies, removing impediments, coaching the
team, and ensuring Scrum adherence.
Servant leadership in Scrum?
+
Servant leadership focuses on supporting and enabling the team
rather than directing them.
Role of Scrum Master as a servant leader?
+
The Scrum Master removes obstacles, empowers the team, and
fosters continuous improvement.
Development Team?
+
The Development Team is a cross-functional group responsible
for delivering product increments.
Responsibilities of the Development Team?
+
Designing, developing, testing, and delivering working software
each sprint.
Are stakeholders in Scrum?
+
Stakeholders are individuals or groups with interest or
influence over the product.
Qualities of a Scrum Master?
+
Strong communication, facilitation skills, servant leadership
mindset, and Agile knowledge.
Qualities of an Agile tester?
+
Collaboration, adaptability, business understanding, and focus
on continuous improvement.
Scrum ceremonies?
+
Scrum ceremonies are time-boxed events used to plan, inspect,
and adapt work in Scrum.
Main Scrum ceremonies?
+
Sprint Planning, Daily Stand-up, Sprint Review, and Sprint
Retrospective.
Scrum cycle length?
+
The Scrum cycle or sprint typically lasts between 1 and 4
weeks.
Purpose of Daily Stand-up?
+
To improve communication, transparency, and identify
impediments early.
Sprint retrospection action items?
+
Improvements identified during retrospectives to apply in
upcoming sprints.
Sprint planning, review, and retrospective?
+
They are ceremonies used to plan work, review outcomes, and
improve processes.
Agile artifacts?
+
Agile artifacts are documents or tools that provide
transparency and opportunities for inspection and adaptation.
Main Agile artifacts in Scrum?
+
Product Backlog, Sprint Backlog, and Increment.
Maintains the Product Backlog?
+
The Product Owner is responsible for maintaining and
prioritizing the Product Backlog.
Increment?
+
An Increment is the sum of all completed work in a sprint that
meets the Definition of Done.
Definition of Done include?
+
Code quality, testing, documentation, and acceptance criteria
completion.
Definition of Ready include?
+
Clear description, acceptance criteria, estimation, and no
major dependencies.
Definition of Done important?
+
It ensures quality, consistency, and transparency of completed
work.
Definition of Ready important?
+
It reduces uncertainty and prevents blockers during the sprint.
Sprint Backlog vs Product Backlog?
+
Sprint Backlog contains sprint-specific work, while Product
Backlog contains all product requirements.
Backlog management?
+
Backlog management is the process of creating, prioritizing,
and maintaining backlog items.
Backlog grooming?
+
Backlog grooming is the practice of prioritizing and preparing
backlog items for future sprints.
Is backlog grooming and backlog refinement the same?
+
Yes, both terms refer to the same backlog preparation activity.
Often should backlog refinement be done?
+
Typically once per sprint on an ongoing basis.
Much time is spent on backlog refinement?
+
Around 5–10% of the team’s sprint capacity.
Backlog refinement best practices?
+
Regular review, clear requirements, prioritization, and
breaking large stories.
Techniques are used for backlog prioritization?
+
MoSCoW, business value, risk, ROI, and dependency analysis.
Epic decomposition?
+
Breaking epics into smaller, manageable user stories.
Tasks in Agile?
+
Tasks are technical activities required to complete a user
story.
MVP vs prototype?
+
MVP is usable and delivers value, while a prototype is used for
experimentation.
Balance stakeholder requests in the backlog?
+
By evaluating business value, urgency, dependencies, and team
capacity.
Story points used instead of hours?
+
They avoid false precision and focus on relative complexity
rather than time.
T-shirt sizing?
+
T-shirt sizing estimates work using sizes like XS, S, M, L, and
XL.
Affinity estimation?
+
Affinity estimation groups similar-sized stories to estimate
large backlogs quickly.
Purpose of sprint planning?
+
To define sprint goals and plan the work required to achieve
them.
Estimate tasks in sprint planning?
+
Using story points, ideal hours, or T-shirt sizing.
Release planning?
+
Release planning defines a roadmap for delivering features over
multiple sprints.
Release planning horizon?
+
It defines the time period covered by a release plan.
Burndown chart?
+
A burndown chart shows remaining work over time in a sprint or
project.
Types of burndown charts?
+
Sprint burndown, release burndown, and product burndown charts.
Burnup chart?
+
A burnup chart shows completed work versus total scope over
time.
Cumulative flow diagram (CFD)?
+
CFD visualizes work in different states over time to identify
bottlenecks.
Track multiple sprints or teams?
+
Using dashboards, program boards, and scaled Agile tools.
Testing continuous in Agile?
+
Because testing starts early and runs throughout the
development lifecycle.
Principles of Agile testing?
+
Early testing, continuous feedback, collaboration, and customer
focus.
TDD used?
+
To improve design, reduce defects, and support regression
testing.
Definition of Done (DoD) in testing?
+
DoD ensures testing criteria are met before work is considered
complete.
Refactoring?
+
Refactoring improves internal code structure without changing
behavior.
Refactoring important?
+
It improves readability, maintainability, and reduces technical
debt.
Ensure quality in Agile delivery?
+
Through automated testing, code reviews, CI/CD, and adherence
to DoD.
Role of QA in Agile?
+
QA collaborates early, defines acceptance criteria, and ensures
continuous quality.
Benefit of CI/CD in Agile?
+
It enables faster feedback, early defect detection, and
frequent releases.
Build breaker?
+
A build breaker is an issue that causes the CI build or
pipeline to fail.
Should be done when a build is broken?
+
It should be fixed immediately before continuing new
development.
Release candidate?
+
A release candidate is a near-final product version ready for
final testing.
Tracer bullet technique?
+
Tracer bullet delivers a thin working slice early to validate
architecture.
Ensure timely delivery in Agile?
+
By clear sprint goals, proper estimation, daily tracking, and
removing blockers.
Scaling Agile needed?
+
To coordinate multiple teams, manage dependencies, and deliver
value at scale.
Scrum of Scrums?
+
Scrum of Scrums is a coordination technique where multiple
Scrum teams synchronize work.
Participates in Scrum of Scrums?
+
Representatives from each Scrum team participate to coordinate
dependencies.
Scaling challenges in Agile?
+
Coordination, maintaining consistency, dependency management,
and cultural alignment.
LeSS in scaling Agile?
+
LeSS scales Scrum principles across multiple teams working on
one product.
Nexus framework?
+
Nexus provides integration-focused scaling of Scrum for
multiple teams.
Benefits of scaling Agile?
+
Faster delivery, better alignment, improved transparency, and
shared ownership.
Agile tools?
+
Agile tools help teams plan, track, collaborate, and report
Agile work.
Track progress in Jira?
+
Using dashboards, reports, burndown charts, and cumulative flow
diagrams.
Create a Kanban board in Jira?
+
Create a board, select Kanban, configure columns, and add
issues.
Control permissions in Confluence?
+
By setting space-level or page-level permissions.
Link Jira issues in Confluence?
+
Using Jira macros to embed issues or reports.
Backlog tracking in Agile tools?
+
Managing and prioritizing backlog items using boards and
reports.
Popular Agile tools?
+
Jira, Trello, Azure DevOps, Asana, Rally, Monday.com, and
VersionOne.
Difference between Agile and Waterfall?
+
Agile is iterative and flexible, while Waterfall is linear and
sequential.
Difference between Waterfall and Agile?
+
Waterfall requires fixed requirements upfront, while Agile
adapts to change.
Difference between Agile and Scrum?
+
Agile is a mindset and methodology, while Scrum is a framework
under Agile.
Difference between Scrum and Kanban?
+
Scrum uses fixed sprints and roles, while Kanban focuses on
continuous flow and WIP limits.
Difference between Agile and DevOps?
+
Agile focuses on development practices, while DevOps focuses on
deployment and operations.
Difference between Agile and Lean?
+
Agile emphasizes iterative delivery, while Lean focuses on
waste reduction.
Difference between Scrum and Waterfall?
+
Scrum is adaptive and iterative, while Waterfall follows a
fixed sequential flow.
Difference between Epic, Feature, and User Story?
+
Epic is large, Feature is mid-level, and User Story is
implementable work.
Difference between Epic, User Story, and Task?
+
Epic is broken into stories, and stories are broken into tasks.
Difference between Product Backlog and Sprint Backlog?
+
Product Backlog contains all requirements, while Sprint Backlog
contains sprint-selected items.
Difference between Sprint Backlog and Product Backlog?
+
Sprint Backlog is short-term and sprint-specific, while Product
Backlog is long-term.
Difference between Story Points and Hours?
+
Story points measure relative effort, while hours measure
actual time.
Difference between Burnup and Burndown charts?
+
Burndown shows remaining work, while burnup shows completed
work and scope.
Difference between Cross-functional and Functional teams?
+
Cross-functional teams have multiple skills, while functional
teams are role-based.
Difference between Incremental and Iterative delivery?
+
Incremental delivers new features, while iterative improves
existing ones.
Difference between MVP and Prototype?
+
MVP is usable and delivers value, while prototype is for
experimentation.
Difference between Agile and Lean thinking?
+
Agile focuses on adaptability, while Lean focuses on
efficiency.
Difference between Bug and Story in backlog?
+
Bug fixes defects, while story delivers new functionality.
Difference between Jira and Confluence?
+
Jira is for tracking work, while Confluence is for
documentation.
Difference between DoD and DoR?
+
DoD defines completion, while DoR defines readiness.
Ensure effective communication in cross-functional teams?
+
By using daily stand-ups, sprint reviews, shared documentation,
and collaboration tools.
Improve team collaboration?
+
By fostering open communication, clear goals, and regular
retrospectives.
Ensure team accountability?
+
Through transparent commitments, daily tracking, and a clear
Definition of Done.
Ensure timely delivery?
+
By setting clear sprint goals, estimating properly, and
removing blockers early.
Handle blocked tasks?
+
By identifying blockers early and escalating or resolving them
collaboratively.
Handle changing priorities mid-sprint?
+
By minimizing changes and negotiating scope adjustments with
the Product Owner.
Manage scope creep during a sprint?
+
By freezing the sprint backlog and deferring new requests to
future sprints.
Handle unplanned work during a sprint?
+
By evaluating urgency and negotiating trade-offs with the
Product Owner.
Handle incomplete stories at sprint end?
+
By returning them to the backlog for re-estimation and
reprioritization.
Handle urgent production issues during a sprint?
+
By addressing critical issues immediately and documenting
sprint impact.
Manage dependencies across teams?
+
By identifying dependencies early and coordinating during
planning and stand-ups.
Track sprint progress?
+
By using burndown charts, task boards, and daily stand-ups.
Communicate delivery status to stakeholders?
+
Through sprint reviews, dashboards, and release notes.
Measure team performance?
+
Using velocity, quality metrics, predictability, and
stakeholder feedback.
Measure productivity in Agile teams?
+
By tracking velocity, cycle time, and delivery consistency.
Measure successful delivery?
+
By meeting sprint goals, Definition of Done, and delivering
business value.
Manage conflicts in cross-functional teams?
+
By encouraging open discussion and aligning on shared goals.
Handle skill gaps in cross-functional teams?
+
By enabling mentoring, pair programming, and cross-training.
Handle technical debt in the backlog?
+
By tracking and prioritizing technical debt alongside feature
work.
Balance speed and quality in delivery?
+
By maintaining testing standards and avoiding overcommitment.
12 principles of agile?
+
Principles include customer satisfaction welcoming change
frequent delivery collaboration motivated individuals working software as measure of
progress sustainable development technical excellence simplicity self-organizing
teams reflection and continuous improvement.
Acceptance criteria?
+
Acceptance criteria define the conditions a user story must
meet to be considered complete.
Acceptance testing?
+
Acceptance testing verifies that software meets business
requirements and user expectations.
Adaptive planning?
+
Adaptive planning adjusts plans based on changing requirements
and feedback.
Advantages & disadvantages of agile
+
Agile enables faster delivery, better customer collaboration,
flexibility to change, and improved product quality. However, it may lack
predictability, require experienced teams, and may struggle with large distributed
teams or fixed-budget environments.
Agile adoption challenges?
+
Challenges include resistance to change lack of management
support poor collaboration and unclear roles.
Agile backlog refinement best practices?
+
Review backlog regularly prioritize items clarify requirements
and break down large stories.
Agile backlog refinement frequency?
+
Typically done once per sprint to keep backlog up-to-date and
prioritized.
Agile ceremonies?
+
Agile ceremonies include sprint planning daily stand-up sprint
review and sprint retrospective.
Agile change management?
+
Agile change management handles requirement and process changes
iteratively and collaboratively.
Agile coach?
+
An Agile coach helps teams and organizations adopt and improve
Agile practices.
Agile continuous delivery?
+
Continuous delivery ensures software can be reliably released
to production at any time.
Agile continuous feedback?
+
Continuous feedback ensures product and process improvements
throughout development.
Agile continuous improvement?
+
Continuous improvement involves inspecting and adapting
processes tools and practices regularly.
Agile cross-functional team benefit?
+
Cross-functional teams reduce handoffs improve collaboration
and deliver faster.
Agile customer collaboration?
+
Customer collaboration involves stakeholders throughout the
development process for feedback and alignment.
Agile customer value?
+
Customer value refers to delivering features and functionality
that meet user needs and expectations.
Agile documentation?
+
Agile documentation is concise just enough to support
development and collaboration.
Agile epic decomposition?
+
Breaking epics into smaller actionable user stories for
implementation.
Agile estimation techniques?
+
Techniques include story points planning poker T-shirt sizing
and affinity estimation.
Agile estimation?
+
Agile estimation is the process of predicting the effort or
complexity of user stories or tasks.
Agile frameworks?
+
They are structured methods like Scrum, Kanban, SAFe, and XP
that implement Agile principles in development.
Agile impediment?
+
Impediment is anything blocking the team from achieving its
sprint goal.
Agile kanban vs scrum?
+
Scrum uses sprints and roles; Kanban is continuous and focuses
on visualizing workflow and limiting WIP.
Agile key success factors?
+
Key factors include collaboration clear vision empowered teams
adaptive planning and iterative delivery.
Agile manifesto?
+
Agile manifesto is a set of values and principles guiding Agile
development.
Agile maturity model?
+
Agile maturity model assesses how effectively an organization
applies Agile practices.
Agile methodology?
+
Agile is an iterative software development approach focusing on
flexibility, customer collaboration, and incremental delivery through continuous
feedback.
Agile metrics?
+
Agile metrics track team performance progress quality and
predictability.
MVP delivers minimal usable product; prototype is a preliminary
model for validation and experimentation.
Agile pair programming?
+
Pair programming involves two developers working together at
one workstation to improve code quality.
Agile portfolio management?
+
Portfolio management applies Agile principles to manage
multiple projects and initiatives.
Agile process?
+
Agile process involves planning, developing in small
increments, testing, review, and adapting based on feedback.
Agile product vision?
+
Product vision defines the long-term goal and direction of the
product.
Agile project management?
+
Agile project management applies Agile principles to plan
execute and deliver projects iteratively.
Agile quality assurance?
+
QA integrates testing early and continuously in the Agile
development cycle.
Agile release planning horizon?
+
Defines a planning period for delivering features or increments
usually several sprints.
Agile release planning?
+
Agile release planning defines a roadmap and schedule for
delivering product increments over multiple sprints.
Agile release train?
+
Release train coordinates multiple teams to deliver value in a
predictable schedule.
Agile retrospection action items?
+
Action items are improvements identified during retrospectives
to implement in future sprints.
Agile retrospectives?
+
Retrospectives are meetings to reflect on the process discuss
improvements and take action.
Agile risk management?
+
Agile risk management identifies assesses and mitigates risks
iteratively during development.
Agile risk mitigation?
+
Risk mitigation involves identifying monitoring and addressing
risks iteratively.
Agile roles and responsibilities?
+
Roles include Product Owner Scrum Master Development Team and
Stakeholders.
Agile scaling challenges?
+
Challenges include coordination between teams consistent
processes and maintaining Agile culture.
Agile servant leadership role?
+
Servant leader supports team autonomy removes impediments and
fosters continuous improvement.
Agile sprint goal?
+
Sprint goal is a clear objective that guides the team's work
during a sprint.
Agile stakeholder engagement?
+
Engaging stakeholders throughout development for feedback
validation and alignment.
Agile team collaboration?
+
Team collaboration emphasizes communication transparency and
shared responsibility.
Agile testing
+
Agile testing is a continuous testing approach aligned with
Agile development. It focuses on early defect detection, customer feedback, and
testing alongside development rather than after coding completes.
Agile testing?
+
Agile testing involves continuous testing throughout the
development lifecycle.
Agile timeboxing benefit?
+
Timeboxing improves focus predictability and encourages timely
delivery.
Agile?
+
Agile is a methodology for software development that emphasizes
iterative development collaboration and flexibility to change.
Application binary interface
+
ABI defines how software components interact at the binary
level. It standardizes function calls, data types, and machine interfaces.
Backlog grooming or refinement?
+
The process of reviewing, prioritizing, and estimating backlog
items to ensure readiness for future sprints.
Backlog grooming/refinement?
+
Backlog grooming is the process of reviewing and prioritizing
the product backlog.
Backlog prioritization?
+
Backlog prioritization determines the order of user stories
based on value risk and dependencies.
Backlog refinement?
+
Ongoing process of reviewing, clarifying, and estimating
backlog items to prepare them for future sprints.
Behavior-driven development (bdd)?
+
BDD involves writing tests in natural language to align
development with business behavior.
Best time to use agile
+
Agile is ideal when requirements are evolving, the project
needs frequent updates, and user feedback is essential. It suits dynamic
environments and product-based development.
Build breaker mean?
+
A build breaker is an issue introduced into the codebase that
causes the CI pipeline or build process to fail. It prevents deployment and needs
immediate fixing before new features continue.
Burn-down chart?
+
A burn-down chart shows remaining work in a sprint or project
over time.
Burn-up & burn-down charts
+
Burn-down charts show remaining work; burn-up charts track
completed progress. Both help monitor sprint or project progress.
Burn-up chart?
+
A burn-up chart shows work completed versus total work in a
project or release.
Can cross-functional teams work with external dependencies?
+
Yes, but dependencies should be managed with clear
communication, planning, and incremental delivery.
Challenges in agile development
+
Unclear requirements, integration issues, team dependencies,
cultural resistance, and estimation challenges are common.
Common agile metrics
+
Velocity, cycle time, burndown rate, lead time, defect density,
and customer satisfaction are common metrics.
Common agile metrics?
+
Common metrics include velocity burn-down/burn-up charts cycle
time lead time and cumulative flow.
Confluence page template?
+
Predefined layouts to standardize documentation like
architecture diagrams, meeting notes, or requirements.
Confluence?
+
Confluence is a collaboration wiki platform for documenting
requirements, architecture, and project knowledge.
Cross-functional team?
+
A team where members have different skills to complete a
project from end to end, including development, testing, and design.
Cross-functional teams handle knowledge sharing?
+
Through pair programming, documentation, workshops, demos, and
retrospectives.
Cross-functional teams important in agile?
+
They reduce handoffs, improve collaboration, accelerate
delivery, and promote shared responsibility.
Cross-functional teams improve quality?
+
Integrated expertise reduces errors, promotes early testing,
and ensures design and code quality throughout the sprint.
Cumulative flow diagram?
+
Visualizes work in different states over time, helping identify
bottlenecks in workflow.
Cycle time?
+
Time taken from when work starts on a task until it is
completed. Helps measure efficiency.
Daily stand-up meeting
+
A short 10–15 minute meeting where team members discuss what
they completed, what they will do next, and any blockers. It improves transparency
and collaboration.
Daily stand-up?
+
Daily stand-up is a short meeting where team members share
progress plans and blockers.
Definition of done (dod)?
+
Criteria that a backlog item must meet to be considered
complete, including code quality, testing, and documentation.
Definition of ready (dor)?
+
Criteria that a backlog item must meet before being pulled into
a sprint. Ensures clarity and reduces blockers.
Diffbet a bug and a story in the backlog?
+
A bug represents a defect or error; a story is a new feature or
enhancement. Both are tracked but may differ in priority.
Diffbet agile and devops?
+
Agile focuses on development process; DevOps focuses on
development deployment and operations collaboration.
Diffbet agile and lean?
+
Agile focuses on iterative development; Lean focuses on waste
reduction and process optimization.
Diffbet agile and waterfall?
+
Agile is iterative and flexible; Waterfall is sequential and
rigid.
Diffbet burnup and burndown charts?
+
Burndown shows remaining work over time; burnup shows work
completed and total scope over time.
Diffbet cross-functional and functional teams?
+
Cross-functional teams have multiple skill sets in one team;
functional teams are organized by specialized roles.
Diffbet epic, feature, and user story?
+
Epic is a large goal, Feature is a smaller functionality, User
Story is a detailed, implementable piece of work.
Diffbet jira and confluence?
+
Jira is for task and project tracking; Confluence is for
documentation and knowledge management. Both integrate for traceability.
Diffbet product backlog and sprint backlog?
+
Product backlog is the full list of features, bugs, and
enhancements. Sprint backlog is a subset selected for the sprint.
Diffbet scrum and kanban?
+
Scrum uses fixed sprints and roles; Kanban is continuous and
focuses on workflow visualization.
Diffbet story points and hours?
+
Story points measure relative effort; hours estimate actual
time to complete a task.
Diffbet waterfall and agile.
+
Waterfall is linear and sequential, while Agile is iterative
and flexible. Agile adapts to change, whereas Waterfall requires full requirements
upfront.
Difference agile vs scrum
+
Agile is a broader methodology mindset, while Scrum is a
specific framework under Agile. Scrum uses roles, ceremonies, and sprints; Agile
provides principles and values.
Epic in agile?
+
An Epic is a large user story that can be broken into smaller
stories.
Epic, user stories & tasks
+
An epic is a large feature broken into user stories. A user
story describes a requirement from the user's perspective, and tasks break stories
into development activities.
Exploratory testing in agile?
+
Exploratory testing is an informal testing approach where
testers learn and test simultaneously.
Four values of agile manifesto?
+
Values: individuals & interactions > processes & tools working
software > documentation customer collaboration > contract negotiation responding to
change > following a plan.
Impediment
+
A problem or blocker preventing a team from progressing. Scrum
Master helps resolve it.
Importance of sprint retrospective?
+
To reflect on the sprint, identify improvements, and strengthen
team collaboration and processes.
Importance of sprint review?
+
To demonstrate completed work, gather feedback, and validate
alignment with business goals.
An increment is the sum of completed product work at the end of
a sprint, delivering potentially shippable functionality.
Incremental delivery?
+
Delivering working software in small, usable increments rather
than waiting for a full release.
Incremental vs iterative delivery?
+
Incremental delivers small usable pieces, iterative improves
them over cycles based on feedback.
Is velocity used in sprint planning?
+
Velocity is the average amount of work completed in previous
sprints. It helps estimate how much the team can commit to in the current sprint.
Iteration in agile?
+
Iteration is a time-boxed cycle of development also known as a
sprint.
Iterative & incremental development
+
Iterative development improves the system through repeated
cycles, while incremental development delivers the system in small functional parts.
Agile combines both to deliver working software early and refine it based on
feedback.
Jira issue types?
+
Common types: Epic, Story, Task, Bug, Sub-task. Each represents
a different level of work.
Jira workflow?
+
A sequence of statuses and transitions representing the
lifecycle of an issue. Supports automation and approvals.
Jira?
+
Jira is a project management tool used for issue tracking,
Agile boards, sprints, and backlog management.
Kanban
+
Kanban focuses on visual workflow management using a board and
continuous delivery. Work-in-progress limits help efficiency.
Kanban board?
+
Kanban board visualizes work items workflow stages and
progress.
Kanban wip limit?
+
WIP limit restricts the number of work items in progress to
improve flow and reduce bottlenecks.
Key outputs of sprint planning?
+
Sprint backlog, sprint goal, task estimates, and commitment of
the team to complete selected items.
Key principles of agile?
+
Key principles include customer collaboration responding to
change working software and individuals and interactions over processes.
Lead time?
+
Time from backlog item creation to delivery. Useful for overall
process efficiency.
Less?
+
LeSS (Large-Scale Scrum) extends Scrum principles to multiple
teams working on the same product.
Long should sprint planning take?
+
Typically 2–4 hours for a 2-week sprint. Longer sprints may
require more time proportionally.
Main roles in scrum
+
Scrum has three key roles: Product Owner, who manages backlog
and priorities; Scrum Master, who ensures process compliance and removes blockers;
and the Development Team, responsible for delivering increments every sprint.
Major agile components.
+
User stories, sprint planning, backlog, iterations, stand-up
meetings, sprint reviews, and retrospectives.
Minimum viable product (mvp)?
+
MVP is the simplest version of a product that delivers value
and can gather feedback.
Moscow prioritization?
+
MoSCoW prioritization categorizes backlog items as Must have
Should have Could have and Won't have.
Nexus?
+
Nexus is a framework to scale Scrum across multiple teams with
integrated work.
Obstacles to agile
+
Challenges include resistance to change, unclear requirements,
lack of training, poor communication, distributed teams, and legacy constraints.
Often should backlog be refined?
+
Ongoing, but typically once per sprint, about 5–10% of the
sprint time is used for grooming.
Other agile frameworks
+
Kanban, XP (Extreme Programming), SAFe, Crystal, and Lean are
major frameworks besides Scrum.
Pair programming
+
Two developers work together on one workstation. It improves
code quality, knowledge sharing, and reduces errors., QA collaborates from the
start, writes acceptance criteria, tests continuously, and ensures quality through
automation and feedback.
Participates in sprint planning?
+
The Scrum Master, Product Owner, and Development Team
participate. PO clarifies backlog items, Dev Team estimates effort, and Scrum Master
facilitates.
Planning poker
+
A collaborative estimation technique where teams assign story
points using cards. Helps achieve shared understanding and consensus.
Planning poker?
+
Planning Poker is a consensus-based estimation technique using
cards with story points.
Popular agile tools
+
Common Agile tools include Jira, Trello, Azure DevOps, Asana,
Rally, Monday.com, and VersionOne. They help manage backlogs, tasks, sprints, and
reporting.
Principles of agile testing
+
Principles include customer-focused testing, continuous
feedback, early testing, frequent delivery, collaboration, and embracing change.
Testing is seen as a shared responsibility, not a separate stage.
Product backlog?
+
An ordered list of features, bugs, and technical work
maintained by the Product Owner. It evolves continuously as requirements change.
Product increment?
+
Product increment is the sum of all completed work in a sprint
that meets the definition of done.
Product owner?
+
Product Owner represents stakeholders manages the backlog and
ensures value delivery.
Product roadmap
+
A strategic plan outlining vision, milestones, timelines, and
prioritized features for product development.
Purpose of sprint planning
+
Sprint planning determines sprint goals, selects backlog items,
and defines how the work will be completed.
Qualities of a scrum master
+
A Scrum Master should have communication and facilitation
skills, problem-solving ability, servant leadership mindset, patience, and knowledge
of Agile principles to guide the team effectively.
Qualities of an agile tester
+
An Agile tester should be collaborative, adaptable, and
proactive. They must understand business requirements, communicate well, and focus
on continuous improvement and quick feedback cycles.
Refactoring
+
Refactoring improves existing code without changing its
external behavior. It enhances readability, performance, and maintainability while
reducing technical debt.
Release candidate
+
A nearly completed product version ready for final testing and
approval before release.
Responsible for backlog management?
+
The Product Owner is primarily responsible, with input from
stakeholders and the development team.
Retrospectives improve delivery?
+
They help identify process improvements, bottlenecks, and team
collaboration issues to improve future sprints.
Role of scrum master in sprint planning?
+
Facilitates discussion, ensures clarity, prevents scope creep,
and promotes team collaboration.
Role of the scrum master in cross-functional teams?
+
Facilitates collaboration, removes impediments, and promotes
self-organization among team members.
Safe?
+
SAFe (Scaled Agile Framework) is a framework to scale Agile
practices across large enterprises.
Scaling agile?
+
Scaling Agile applies Agile practices across multiple teams or
large projects.
Scrum & kanban used?
+
Scrum is used where work is iterative with evolving
requirements, such as software development and product improvement. Kanban is used
in support, maintenance, DevOps, and continuous delivery environments where work is
flow-based rather than sprint-based.
Scrum cycle length
+
A scrum cycle, or sprint, usually lasts 1–4 weeks. The duration
remains consistent throughout the project.
Scrum master?
+
Scrum Master facilitates Scrum processes removes impediments
and supports the team.
Scrum of scrums
+
A technique used when multiple scrum teams work together.
Representatives meet to coordinate dependencies and align progress.
Scrum?
+
Scrum is an Agile framework that uses roles events and
artifacts to manage complex projects.
Spike & zero sprint
+
A spike is research activity to resolve uncertainty or
technical issues. Zero sprint (Sprint 0) involves initial setup activities like
architecture, environment, and backlog preparation before development.
Spike?
+
A spike is a time-boxed research activity to explore a solution
or reduce uncertainty.
Spotify model?
+
Spotify model organizes Agile teams as squads tribes chapters
and guilds to foster autonomy and alignment.
Sprint backlog vs product backlog
+
The product backlog contains all requirements prioritized by
the product owner, while the sprint backlog contains the selected items for the
current sprint. Sprint backlog is short-term; product backlog is long-term.
Sprint backlog?
+
The sprint backlog is a subset of the product backlog selected
for implementation in a sprint.
Sprint delivery?
+
Sprint delivery is the completion and demonstration of
committed backlog items to stakeholders at the end of a sprint.
Sprint goal?
+
A short description of what the sprint aims to achieve. It
guides the team and aligns stakeholders.
Sprint planning, review & retrospective
+
Sprint planning defines sprint goals and backlog. Sprint review
demonstrates work to stakeholders. Retrospective reflects on improvements.
Sprint planning?
+
Sprint Planning is a Scrum ceremony where the team decides
which backlog items to work on in the upcoming sprint. It defines the sprint goal
and estimated tasks.
Sprint retrospective?
+
Sprint retrospective is a meeting to reflect on the sprint and
identify improvements.
Sprint review?
+
Sprint review is a meeting to demonstrate completed work to
stakeholders and gather feedback.
Sprint?
+
A sprint is a time-boxed iteration usually 1-4 weeks where a
set of work is completed.
Story points
+
A unit for estimating effort or complexity in Scrum, not tied
to time. Helps predict workload and sprint capacity.
Story points?
+
Story points are relative measures of effort complexity or risk
for user stories.
Team velocity tracking?
+
Tracking velocity helps predict how much work a team can
complete in future sprints.
Test-driven development (tdd)
+
TDD involves writing tests before writing code. It ensures
better design, reduces bugs, and supports regression testing.
Test-driven development (tdd)?
+
TDD is a practice where tests are written before the code to
ensure functionality meets requirements.
Theme in agile?
+
A theme is a collection of related user stories or epics around
a common objective.
Time-boxing?
+
Time-boxing is allocating a fixed duration to activities to
improve focus and productivity.
To balance stakeholder requests in backlog?
+
Evaluate based on business value, urgency, dependencies, and
capacity. Communicate trade-offs transparently.
To control permissions in confluence?
+
Set space-level or page-level permissions for viewing, editing,
or commenting based on user roles or groups.
To create a kanban board in jira?
+
Create a board from project → select Kanban → configure columns
→ add issues for workflow tracking.
To handle unplanned work during a sprint?
+
Minimize interruptions. If unavoidable, negotiate scope
adjustments with PO and team. Track and learn for future planning.
To link jira issues in confluence?
+
Use Jira macro to embed issues, sprints, or reports directly
into Confluence pages.
To track progress in jira?
+
Use dashboards, reports, burndown charts, and cumulative flow
diagrams.
Tracer bullet
+
A technique delivering a thin working slice of the system early
to validate architecture and direction.
Types of agile methodology.
+
Scrum, Kanban, XP (Extreme Programming), Lean, SAFe, and
Crystal are popular Agile variants.
Types of burn-down charts
+
Types include sprint burndown, release burndown, and product
burndown charts. Each offers different timelines and scope levels.
Use agile
+
Avoid Agile in fixed-scope, fixed-budget projects, strict
compliance domains, or when customer feedback is unavailable.
Use waterfall instead of scrum
+
Use Waterfall when requirements are fixed, documentation-heavy,
regulated, and no major changes are expected. It fits infrastructure or hardware
projects better.
User story?
+
A user story is a short simple description of a feature from
the perspective of an end user.
Velocity in agile
+
Velocity measures the amount of work a team completes in a
sprint, typically in story points. It helps estimate future sprint capacity and
planning.
Velocity in agile?
+
Velocity measures the amount of work a team completes in a
sprint.
Velocity?
+
Velocity measures the amount of work a team completes in a
sprint, often in story points. Helps with forecasting.
You balance speed and quality in delivery?
+
Prioritize well-defined backlog items, maintain testing
standards, and avoid overcommitment.
You communicate delivery status to stakeholders?
+
Use sprint reviews, dashboards, Jira reports, and release notes
for transparency.
You ensure effective communication in cross-functional teams?
+
Daily stand-ups, retrospectives, sprint reviews, shared
documentation, and collaboration tools help maintain transparency.
You ensure quality in delivery?
+
Unit tests, code reviews, automated testing, CI/CD pipelines,
and adherence to Definition of Done.
You ensure team accountability?
+
Transparent commitments, daily stand-ups, peer reviews, and
clear Definition of Done.
You ensure timely delivery?
+
Clear sprint goals, proper estimation, daily tracking, and
removing blockers proactively help ensure on-time delivery.
You estimate tasks in sprint planning?
+
Using story points, ideal hours, or T-shirt sizing. Estimation
considers complexity, effort, and risk.
You handle blocked tasks?
+
Identify blockers early, escalate if needed, and collaborate to
remove impediments quickly.
You handle changing priorities mid-sprint?
+
Limit mid-sprint changes; negotiate with PO, document impact,
and adjust future sprint planning.
You handle conflicts in cross-functional teams?
+
Encourage open communication, identify root causes, facilitate
discussions, and align on shared goals.
You handle incomplete stories at sprint end?
+
Move them back to backlog, review root cause, and include in
future sprints after re-estimation.
You handle skill gaps in cross-functional teams?
+
Encourage knowledge sharing, mentoring, pair programming, and
cross-training to build team capability.
You handle technical debt in backlog?
+
Track and prioritize technical debt items along with functional
stories to ensure system maintainability.
You handle urgent production issues during a sprint?
+
Address them immediately if critical, or plan within sprint
buffer. Document impact on sprint goals.
You improve team collaboration?
+
Facilitate open communication, collaborative tools, clear
goals, and regular retrospectives.
You manage dependencies across teams?
+
Identify dependencies early, communicate timelines, and
coordinate during planning and stand-ups.
You manage scope creep during a sprint?
+
Freeze the sprint backlog, handle new requests in the next
sprint, and communicate priorities clearly.
You measure productivity in cross-functional teams?
+
Use velocity, cycle time, burndown charts, quality metrics, and
stakeholder feedback.
You measure successful delivery?
+
Completion of sprint backlog, meeting Definition of Done,
stakeholder satisfaction, and business value delivered.
You prioritize backlog items?
+
Using MoSCoW (Must, Should, Could, Won’t), business value,
risk, dependencies, and ROI.
You track multiple sprints simultaneously?
+
Use program boards, Jira portfolios, or scaled Agile tools like
SAFe to visualize cross-team progress.
You track sprint progress?
+
Use burndown charts, task boards, and daily stand-ups to
monitor completed versus remaining work.
ANGULAR
+
Is Angular a framework or library?
+
Angular is a full-fledged framework.
Angular introduced?
+
To build dynamic, fast, client-side single-page applications.
Type of applications does Angular build?
+
Single Page Applications (SPAs).
Language is Angular written in?
+
Angular is written in TypeScript.
Angular architecture?
+
Modules, Components, Templates, Directives, Services,
Dependency Injection, and Routing.
Component in Angular?
+
A component controls a part of the UI with logic, template, and
styles.
Types of data binding does Angular support?
+
Interpolation, property binding, event binding, and two-way
binding.
Does Angular use client-side rendering by default?
+
Yes, Angular uses client-side rendering by default.
Browsers does Angular support?
+
Modern evergreen browsers like Chrome, Edge, Firefox, and
Safari.
Angular component?
+
A component is a class that controls a portion of the UI with a
template and styles.
Main parts of a component?
+
Component class, template, metadata, and styles.
@Component decorator?
+
It marks a class as an Angular component and supplies
configuration metadata.
Properties are defined in @Component?
+
selector, templateUrl, styleUrls, and providers.
Selector in Angular?
+
A CSS selector that identifies where the component is used.
TemplateUrl?
+
It points to the external HTML file of a component.
StyleUrls?
+
It defines CSS files applied to the component.
Inline template?
+
A template defined directly inside the component decorator.
Inline style?
+
CSS styles defined directly inside the component decorator.
Template in Angular?
+
An HTML view that renders component data.
Interpolation in templates?
+
Displaying component data using {{ }} syntax.
Property binding?
+
Binding component properties to HTML element properties.
Event binding?
+
Binding DOM events to component methods.
Two-way data binding?
+
Synchronizing data between component and view using ngModel.
NgModel?
+
A directive used for two-way data binding in forms.
Template reference variable?
+
A variable that references a DOM element or directive.
View encapsulation?
+
A mechanism to scope component styles.
View encapsulation types?
+
Emulated, ShadowDom, and None.
Structural directive?
+
A directive that changes the DOM layout by adding or removing
elements.
Common structural directives?
+
*ngIf, *ngFor, and *ngSwitch.
Attribute directive?
+
A directive that changes the appearance or behavior of an
element.
Common attribute directives?
+
ngClass and ngStyle.
NgClass do?
+
Dynamically adds or removes CSS classes.
NgStyle do?
+
Dynamically applies inline styles.
Custom directive?
+
A user-defined directive to extend HTML behavior.
Decorator is used to create a directive?
+
@Directive decorator.
Pipe syntax?
+
Using the pipe symbol (|) in templates.
Built-in pipes in Angular?
+
Date, UpperCase, LowerCase, Currency, Decimal, and Percent.
Decorator is used to create a pipe?
+
@Pipe decorator.
Services used in Angular?
+
To separate business logic from UI components.
Angular injector?
+
A system that creates and manages service instances.
Decorator is used to create a service?
+
@Injectable decorator.
ProvidedIn property do?
+
Specifies where the service is provided in the application.
ProvidedIn: 'root'?
+
Registers the service as a singleton at the application root.
Provider in Angular?
+
A configuration that tells Angular how to create a service.
Providers be registered?
+
Root module, component, or module level.
Hierarchical dependency injection?
+
A tree-based injector structure allowing scoped services.
Singleton service?
+
A service with only one instance across the application.
Scoped service?
+
A service instance limited to a specific module or component.
UseClass provider?
+
Provides a class as a dependency.
UseValue provider?
+
Provides a static value as a dependency.
UseFactory provider?
+
Provides a dependency using a factory function.
UseExisting provider?
+
Aliases one provider to another.
Dependency injection token?
+
A unique identifier for non-class dependencies.
InjectionToken?
+
A token used for injecting values that are not classes.
Tree-shakable service?
+
A service removed from build output if unused.
Angular routing?
+
Angular routing enables navigation between different views in a
single-page application.
Module is used for routing?
+
RouterModule.
Routes in Angular?
+
A configuration array that defines application routes.
Route?
+
A mapping between a URL path and a component.
RouterOutlet?
+
A directive that displays routed components.
RouterLink?
+
A directive used to navigate between routes declaratively.
Programmatic navigation?
+
Navigation performed using the Router service.
ActivatedRoute?
+
A service that provides information about the current route.
Snapshot in ActivatedRoute?
+
A static representation of route data at a moment in time.
Query parameter?
+
Optional parameters appended to the URL.
Route guard?
+
A mechanism to control access to routes.
Types of route guards?
+
CanActivate, CanDeactivate, CanLoad, Resolve, and
CanActivateChild.
CanActivate guard do?
+
Determines whether a route can be activated.
CanDeactivate guard do?
+
Determines whether a user can leave a route.
Resolve guard?
+
Preloads data before route activation.
Lazy loading used?
+
To improve application performance and load time.
Wildcard route?
+
A route used to handle unknown paths.
Forms in Angular?
+
Forms are used to capture and validate user input.
Types of forms does Angular support?
+
Template-driven forms and Reactive forms.
Module is required for template-driven forms?
+
FormsModule.
Directive is used for template-driven forms?
+
ngModel.
Two-way binding in forms?
+
Synchronizing form input with component data using ngModel.
Validation done in template-driven forms?
+
Using HTML validation attributes and Angular directives.
Module is required for reactive forms?
+
ReactiveFormsModule.
FormGroup?
+
A collection of form controls tracked as a group.
FormControl?
+
An object that tracks value and validation state of an input.
FormArray?
+
A collection of FormControl or FormGroup instances.
Form validation?
+
Ensuring form input meets defined rules.
Built-in validators?
+
Validators.required, minLength, maxLength, and pattern.
Custom validation?
+
User-defined validation logic.
Synchronous validation?
+
Validation executed immediately.
Asynchronous validation?
+
Validation executed asynchronously, often using HTTP calls.
Form submission?
+
Handling user input when the form is submitted.
Form state?
+
Status like valid, invalid, touched, or dirty.
Reset() in forms?
+
Clears form values and resets state.
HttpClient in Angular?
+
HttpClient is a service used to communicate with backend APIs
over HTTP.
Module provides HttpClient?
+
HttpClientModule.
HTTP methods does HttpClient support?
+
GET, POST, PUT, PATCH, DELETE, and OPTIONS.
Http.get() do?
+
Retrieves data from a server.
Http.post() do?
+
Sends data to create a new resource.
Http.put() do?
+
Updates an existing resource completely.
Http.patch() do?
+
Partially updates an existing resource.
Http.delete() do?
+
Deletes a resource on the server.
Library provides Observables in Angular?
+
RxJS.
Subscribe()?
+
A method used to consume Observable data.
RxJS operators?
+
Functions that transform or manipulate Observable streams.
Common RxJS operators?
+
map, filter, tap, mergeMap, switchMap, and catchError.
Pipe() in RxJS?
+
A method to combine multiple operators.
Error handling in HttpClient?
+
Handling HTTP errors using RxJS operators.
CatchError()?
+
An operator used to handle errors in Observables.
HttpInterceptor?
+
A service that intercepts HTTP requests and responses.
Interceptors used?
+
For logging, authentication headers, and error handling.
Async pipe?
+
A pipe that subscribes and unsubscribes to Observables
automatically.
State in Angular?
+
State represents application data that affects the UI and
behavior.
State management?
+
Managing and synchronizing application state consistently.
State management important?
+
It improves predictability, scalability, and maintainability.
Component state?
+
State managed locally within a component.
Shared state?
+
State shared across multiple components.
Shared state managed in Angular?
+
Using services with dependency injection.
NgRx store components?
+
Store, Actions, Reducers, Selectors, and Effects.
Action in NgRx?
+
An object describing a state change event.
Reducer?
+
A pure function that updates state based on actions.
Selector?
+
A function that selects slices of state.
Effect in NgRx?
+
Handles side effects like API calls.
Change detection?
+
The process of updating the view when data changes.
Triggers change detection?
+
Events, async operations, and data binding changes.
Default change detection strategy?
+
Checks all components for changes.
OnPush change detection?
+
Checks component only when input references change.
OnPush improve performance?
+
By reducing unnecessary change detection cycles.
TrackBy in ngFor?
+
Optimizes rendering by tracking item identity.
Lazy loading for performance?
+
Loading modules only when required.
Angular performance optimization?
+
Techniques to improve speed and responsiveness.
Testing in Angular?
+
Testing verifies correctness and reliability of Angular
applications.
Types of testing are used in Angular?
+
Unit testing, integration testing, and end-to-end testing.
Unit testing in Angular?
+
Testing individual components, services, or pipes in isolation.
Framework is commonly used for Angular unit testing?
+
Jasmine.
Karma?
+
A test runner used to execute Angular unit tests.
ComponentFixture?
+
A wrapper that provides access to a component instance and DOM.
Mocking in Angular testing?
+
Replacing real dependencies with fake ones.
Spy in Jasmine?
+
A function that tracks calls and arguments.
End-to-end testing?
+
Testing the entire application flow from user perspective.
Tool is used for Angular E2E testing?
+
Protractor or Cypress.
Debugging in Angular?
+
Identifying and fixing application issues.
Common debugging tools?
+
Browser DevTools and Angular DevTools.
Console logging?
+
Using console methods to inspect runtime values.
Error handling in Angular?
+
Managing runtime and HTTP errors gracefully.
ErrorHandler class?
+
A global error handling service in Angular.
Try-catch used for?
+
Handling synchronous runtime errors.
HTTP error handling?
+
Handling backend API errors using HttpClient.
Global error handling?
+
Centralized handling of application errors.
Proper error handling important?
+
It improves application stability and user experience.
Angular build process?
+
The process of compiling and bundling Angular application
files.
Tool is used to build Angular applications?
+
Angular CLI.
Ng build?
+
A command that builds the Angular application.
Production build?
+
A build optimized for performance and size.
#NAME?
+
Enables production optimizations like minification and tree
shaking.
Ahead-of-Time (AOT) compilation?
+
Compiling templates during build time.
Just-in-Time (JIT) compilation?
+
Compiling templates at runtime.
Code splitting?
+
Dividing code into smaller chunks for lazy loading.
Lazy loading in production?
+
Loading feature modules only when required.
Environment configuration?
+
Using environment-specific settings for builds.
Environment.ts?
+
A file storing environment-specific variables.
Deployment in Angular?
+
Publishing the built application to a server.
Angular apps be deployed?
+
Web servers, cloud platforms, or CDNs.
CI/CD in Angular?
+
Automated build, test, and deployment pipelines.
Angular Universal in production?
+
Using server-side rendering for better performance and SEO.
Bundle optimization?
+
Reducing bundle size for faster loading.
Performance budget?
+
Limits set on bundle size and load time.
Production monitoring?
+
Tracking errors and performance in live applications.
:host property in CSS
+
:host targets the component’s root element from within its
CSS., Allows styling the host without affecting other components.
Activated route?
+
ActivatedRoute provides info about the current route., Access
route params, query params, fragments, and data., Injected into components via
constructor.
Active router links?
+
Active links are highlighted when the route matches the current
URL., Use routerLinkActive directive:, Home, This helps in UI feedback for
navigation.
Add web workers in your application?
+
Use Angular CLI: ng generate web-worker ., Update angular.json
and enable TypeScript worker configuration., Offloads heavy computation to
background threads for performance.
Advantages and disadvantages of Angular
+
Advantages: Component-based, TypeScript, SPA support, tooling.,
Disadvantages: Steep learning curve, larger bundle size, complex for small apps.
Advantages of Angular over other frameworks
+
Strong TypeScript support., Declarative templates with data
binding., Rich ecosystem and official libraries (Material, Forms, RxJS)., Modular,
testable, and maintainable code.
Advantages of Angular over React
+
Angular is a full-fledged framework, React is a library.,
Built-in support for forms, routing, and HTTP., Strong TypeScript integration for
better type safety.
Advantages of Angular?
+
Two-way data binding, modularity, dependency injection,
TypeScript support, and powerful CLI.
Advantages of AOT
+
Faster app startup., Smaller bundle size., Detects template
errors at build time., Better security by compiling templates ahead of time.
Advantages of Bazel tool
+
Faster builds with caching, Parallel execution,
Language-agnostic support, Scales well for monorepos
Angular Animation?
+
Angular Animation allows creating smooth UI animations in
components., Built on Web Animations API with @angular/animations., Supports
transitions, keyframes, triggers, and states for dynamic effects.
Angular application work?
+
Angular apps run in the browser., Templates define UI,
components handle logic, and services manage data., Data binding updates the view
dynamically when the model changes.
Authentication: Verify user identity (login, JWT).,
Authorization: Control access to resources/routes based on roles., Implemented using
guards, tokens, and HttpInterceptors.
Angular CLI Builder?
+
Angular CLI Builder is a customizable build pipeline tool., It
allows modifying build, serve, and test processes., Used to extend or replace
default Angular CLI behavior.
Angular CLI?
+
Angular CLI is a command-line tool for Angular projects., Used
to generate components, modules, services, and run builds., Simplifies scaffolding
and deployment tasks.
Angular compiler?
+
Transforms Angular TypeScript and templates into JavaScript.,
Includes AOT and JIT compilers., Generates code for change detection and view
rendering.
Angular DSL?
+
DSL (Domain-Specific Language) in Angular refers to template
syntax., It allows declarative UI using HTML with Angular directives., Includes
*ngIf, *ngFor, interpolation, and bindings.
Angular Elements
+
Angular Components packaged as custom HTML elements., Can be
used outside Angular apps., Supports inputs, outputs, and encapsulation.
Angular expressions vs JavaScript expressions
+
Angular expressions are evaluated in the scope context and are
safe., No loops, conditionals, or global access., JS expressions can access any
variable or perform complex operations.
Angular finds components, directives, and pipes
+
Compiler scans NgModule declarations., Generates factories and
resolves templates and dependencies.
Angular Framework?
+
Angular is a TypeScript-based front-end framework for building
dynamic single-page applications (SPAs)., It provides features like components, data
binding, dependency injection, and routing., Maintains a modular architecture and
encourages reusable code., It supports both client-side rendering and progressive
web apps.
Angular introduced as a client-side framework?
+
To create dynamic SPAs with fast user interactions., Reduces
server load by rendering templates on the client., Provides data binding,
modularity, and reusable components.
Angular Ivy?
+
Ivy is the new rendering engine in Angular., It improves build
size, speed, and runtime performance., Supports AOT compilation, better debugging,
and improved type checking.
Angular Language Service?
+
Provides editor support like autocomplete, type checking, and
error detection for Angular templates., Helps developers write Angular code faster
and with fewer mistakes.
Angular library
+
Reusable module/package with components, directives, services.,
Can be published and shared via npm.
Angular Material mean?
+
Angular Material is a UI component library implementing
Google’s Material Design., Provides pre-built components like buttons, tables,
forms, and dialogs., Enhances UI consistency and responsiveness.
Angular Material?
+
Official UI component library for Angular., Provides modern,
accessible, and responsive UI components.
Angular render on server-side?
+
Yes, using Angular Universal., Enables SSR for SEO and faster
initial load.
Angular Router?
+
Angular Router allows navigation between views/components., It
maps URLs to components., Supports nested routes, lazy loading, and route guards.,
Enables single-page application (SPA) behavior.
Angular security model for preventing XSS attacks
+
Angular automatically escapes interpolated content., Sanitizes
URLs, HTML, and styles in templates., Prevents injection attacks on the DOM.
Angular Signals with an example
+
import { signal } from '@angular/core';, const count =
signal(0);, count.set(5); // Updates reactive value, count.subscribe(val =>
console.log(val));, When count changes, subscribed components update automatically.
Angular Signals?
+
Signals are reactive primitives to track state changes., They
allow automatic UI updates when values change.
Angular simplifies Internationalization (i18n)
+
Provides built-in i18n support, translation files, and pipes.,
Supports pluralization, locale formatting, and dynamic translations., CLI helps
extract and compile translations.
Angular Universal?
+
Angular Universal enables server-side rendering (SSR) of
Angular apps., Improves SEO and performance., Pre-renders HTML on the server before
sending to client.
Angular uses client-side rendering by default
+
True. Angular renders templates in the browser using
JavaScript., Server-side rendering (Angular Universal) is optional.
Angular?
+
Angular is a TypeScript-based front-end framework., Used to
build single-page applications (SPAs)., Supports components, modules, services, and
reactive programming.
Annotations in Angular
+
Older term for decorators in AngularJS., Used to attach
metadata to classes or functions., Helps framework know how to process the
component.
AOT (Ahead-of-Time) compiles Angular templates during build
time., Advantages: Faster rendering, smaller bundle size, early error detection, and
better security.
AOT compiler
+
Ahead-of-Time compiler compiles templates during build, not
runtime., Reduces bundle size, improves performance, and catches template errors
early.
AOT?
+
AOT compiles Angular templates during build., Generates
optimized JavaScript before the app loads., Improves performance and reduces runtime
errors.
Applications of HTTP interceptors
+
Add authentication tokens, logging, error handling, caching.,
Modify request/response globally., Handle API versioning or header manipulation.
Are all components generated in production build?
+
Only components referenced or reachable from templates and
routes are included., Unused components are tree-shaken.
Are multiple interceptors supported in Angular?
+
Yes, interceptors are executed in the order provided., Each can
pass control to the next using next.handle().
AsyncPipe in Angular?
+
AsyncPipe subscribes to Observables/Promises in templates and
handles unsubscription automatically.
Bazel tool?
+
Bazel is a build and test tool developed by Google., It handles
large-scale projects efficiently., Supports incremental builds and caching.
BehaviorSubject in Angular?
+
BehaviorSubject stores current value and emits it to new
subscribers.
Benefit of Automatic Inlining of Fonts
+
Embeds fonts directly into CSS to reduce network requests.,
Improves page load speed and performance., Enhances First Contentful Paint (FCP)
metrics.
Best practices for security in Angular
+
Use sanitization, HttpClient, and Angular templates safely.,
Avoid innerHTML for untrusted content., Enable Content Security Policy (CSP) and
HTTPS.
Bootstrapped component?
+
Root component loaded by Angular to start the application.,
Declared in bootstrap array of AppModule.
Bootstrapping module?
+
It is the root Angular module that launches the application.,
Defined with @NgModule and bootstrap array., Typically called AppModule.
Browser support for Angular
+
Supports latest Chrome, Firefox, Edge, Safari., IE11 support is
deprecated in recent Angular versions., Modern Angular relies on evergreen browsers
for features.
Browser support of Angular Elements
+
Supported in all modern browsers (Chrome, Firefox, Edge,
Safari)., Polyfills may be needed for IE11.
Builder?
+
A Builder is a class or script that executes a specific task in
Angular CLI., It can run builds, tests, linting, or deploy tasks., Provides
flexibility to customize CLI workflows.
Building blocks of Angular?
+
Angular is built using several key components: Components (UI
control), Modules (grouping functionality), Templates (HTML with Angular bindings),
Services (business logic), and Dependency Injection. These work together to build
scalable single-page applications.
Can you read full response?
+
Use { observe: 'response' } with HttpClient:,
this.http.get('api/users', { observe: 'response' }).subscribe(resp =>
console.log(resp.status, resp.body));, It returns headers, status, and body.
Case types in Angular?
+
Angular uses naming conventions:, camelCase for variables and
functions, PascalCase for classes and components, kebab-case for selectors and
filenames, This ensures consistency and readability.
Categorize data binding types?
+
One-way binding: Interpolation, property, event, Two-way
binding: [(ngModel)], Enables dynamic updates between component and view.
Chain pipes?
+
Multiple pipes can be applied sequentially using |., Example:
{{ name | uppercase | slice:0:5 }}, Output is passed from one pipe to the next.
Change Detection and how does it work?
+
Change Detection tracks updates in component data and updates
the view., Angular checks the component tree for changes automatically., It works
via Zones and triggers re-rendering when a model changes., Helps keep UI and data
synchronized.
Change detection in Angular?
+
Change detection tracks changes in application state and
updates the DOM accordingly.
Change settings of zone.js
+
Configure zone.js flags before import in polyfills:, (window as
any).__Zone_disable_X = true;, Controls patching of timers, events, or async
operations.
Choose an element from a component template?
+
Use ViewChild or ViewChildren decorators., Example:
@ViewChild('myElement') element: ElementRef;, Access DOM elements directly in
component class.
Class decorators in Angular?
+
Class decorators attach metadata to a class., Common ones:
@Component, @Directive, @Injectable, @NgModule., They define how the class behaves
in Angular’s DI and rendering system.
Class decorators?
+
Class decorators define metadata for classes., Example:
@Injectable() marks a class for dependency injection.
Class field decorators?
+
Class field decorators annotate properties of a class.,
Examples: @Input(), @Output(), @ViewChild()., They help Angular bind data, access
DOM, or communicate between components.
Classes that should not be added to declarations
+
Services, Modules, Non-Angular classes, Declarations should
include components, directives, and pipes only.
Client-side frameworks like Angular were introduced?
+
To create dynamic, responsive web apps without reloading
pages., They handle data binding, DOM manipulation, and routing on the client side.,
Improves performance and user experience.
Code for creating a decorator.
+
A basic Angular decorator example:, function Log(target, key)
{, console.log(`Property ${key} was accessed`);, }, Decorators enhance or modify
class behavior during runtime.
Codelyzer?
+
Codelyzer is a static analysis tool for Angular projects., It
checks for coding style, best practices, and template errors., Used with TSLint for
linting Angular apps.
Collection?
+
In Angular, a collection is a group of objects like arrays,
sets, or maps., Used to store and iterate over data in templates using ngFor.
Compare service() and factory() functions.
+
service() returns an instantiated singleton object and is
created using a constructor function. factory() allows returning a custom object,
function, or primitive and provides more flexibility. Both are used for sharing
reusable logic across components.
Compilation process?
+
Transforms Angular templates and metadata into efficient
JavaScript., Ensures type safety and detects template errors., Optimizes the app for
performance.
Component Decorator?
+
@Component defines a class as an Angular component., Specifies
metadata like selector, template, and styles., Registers the component with
Angular’s module system.
Component Test Harnesses?
+
A test API for Angular Material components., Allows interacting
with components in tests without relying on DOM selectors., Provides a clean and
maintainable way to write unit tests.
Components in Angular?
+
Components are building blocks of Angular applications that
control a part of the UI.
Components, Modules, and Services in Angular
+
Component: UI + logic., Module: Groups components, directives,
and services., Service: Provides reusable business logic, injected via dependency
injection.
Components?
+
Components are building blocks of Angular apps., They contain
template, class (logic), and metadata., Responsible for rendering views and handling
user interaction.
Concept of Dependency Injection (DI).
+
DI provides class dependencies automatically via Angular’s
injector., Reduces manual instantiation and promotes testability., Example:
Injecting a service into a component constructor.
Configure injectors with providers at different levels
+
Root injector: App-wide singleton (providedIn: 'root')., Module
injector: Module-specific., Component injector: Scoped to component and children.
Content projection?
+
Mechanism to pass content from parent to child component.,
Allows child components to display dynamic content from parent templates.
Create a standalone component manually
+
Set standalone: true in the component decorator:, @Component({,
selector: 'app-my-component',, standalone: true,, templateUrl:
'./my-component.html', }), export class MyComponent {}
Create a standalone component using CLI
+
Run: ng generate component my-component --standalone.,
Generates a component without declaring it in a module.
Create an app shell in Angular?
+
Use Angular CLI command: ng add @angular/pwa to enable PWA
features., Then run ng generate app-shell --client-project ., It generates
server-side rendered shell for faster initial load., App shell improves performance
and perceived loading speed.
Create directives using CLI
+
Run:, ng generate directive myDirective, Generates directive
file with @Directive decorator ready to use.
Create displayBlock components
+
Use display: block in component CSS or
Create schematics for libraries?
+
Use Angular CLI command: ng generate schematic , Define rules
to create components or modules in the library., Automates repetitive tasks in
library development.
Custom elements
+
Custom elements are browser-native HTML elements defined by
developers., They encapsulate functionality and can be reused like standard tags.
Custom elements work internally
+
Angular wraps a component in custom element class., Manages
inputs/outputs, change detection, and lifecycle hooks., Element behaves like a
standard HTML tag.
Custom pipe?
+
Custom pipe is a user-defined pipe to transform data., Created
using @Pipe decorator and implementing PipeTransform., Useful for app-specific
formatting or logic.
Data binding in Angular
+
Synchronizes data between component and template., Can be
one-way or two-way., Reduces manual DOM manipulation.
Data binding in Angular?
+
Data binding synchronizes data between the component class and
template.
Data binding?
+
Data binding connects component class with template/view.,
Types include one-way (interpolation, property, event) and two-way binding., Enables
dynamic UI updates.
Data Binding? In how many ways can it be executed?
+
Data binding connects data between the component and the UI.
Angular supports four main types: Interpolation ({{ }}), Property Binding ([ ]),
Event Binding (( )), and Two-way Binding ([( )]) using ngModel.
Deal with errors in observables?
+
Use the catchError operator in RxJS., Handle errors inside
subscribe via error callback., Example:, observable.pipe(catchError(err =>
of([]))).subscribe(...)
Declarable in Angular?
+
Declarable refers to classes that can be declared in an
NgModule., Includes Components, Directives, and Pipes., They define UI behavior or
transformations in templates.
Decorator in Angular?
+
Decorator is a function that adds metadata to classes, e.g.,
@Component, @Injectable.
Decorators in Angular
+
Decorators provide metadata to classes, methods, or
properties., Types: @Component, @Injectable, @Directive, @Pipe., They enable Angular
features like dependency injection and templates.
Define routes?
+
Routes are defined using a Routes array:, const routes: Routes
= [, { path: 'home', component: HomeComponent },, { path: 'about', component:
AboutComponent }, ];, Configured via RouterModule.forRoot(routes).
Define the ng-content Directive
+
Allows content projection into a child component., Acts as a
placeholder for parent-provided HTML content.
Define typings for custom elements
+
Create a .d.ts file declaring:, interface HTMLElementTagNameMap
{ 'my-element': MyComponentElement; }, Ensures TypeScript type checking.
Dependency Hierarchy formed?
+
Angular forms a tree hierarchy of injectors., Root injector
provides global services., Child components can have component-level injectors.,
Services are resolved from closest injector upwards.
Dependency Injection
+
DI is a design pattern to inject dependencies into
components/services., Promotes loose coupling and testability., Angular has a
built-in DI system.
Dependency injection in Angular?
+
Dependency Injection (DI) provides services or objects to
components automatically., Avoids manual creation of service instances., Promotes
modularity and testability.
Dependency injection tree in Angular?
+
Hierarchy of injectors controlling service scope and lifetime.
Describe the MVVM architecture
+
Model-View-ViewModel separates data, UI, and logic., Angular
components act as ViewModel, templates as View, services/models as Model.
Describe various dependencies in Angular application?
+
Dependencies are described using constructor injection in
services or components., Decorators like @Injectable() and @Inject() define provider
rules., Angular’s DI system manages the lifecycle and resolution of dependencies.
Design goals of Service Workers
+
Offline-first experience, Background sync and push
notifications, Improved performance and caching strategies, Enhancing reliability
and responsiveness
Detect route change in Angular?
+
Subscribe to Router events:, this.router.events.subscribe(event
=> { /* handle NavigationEnd */ });, You can use ActivatedRoute to detect parameter
changes., Useful for executing logic on route transitions.
DI token?
+
DI token is a key used to inject a dependency in Angular’s DI
system., Can be a type, string, or InjectionToken., Helps Angular locate and provide
the correct service or value.
ActivatedRoute and Router?
+
ActivatedRoute provides info about current route; Router is
used to navigate programmatically.
Angular Elements and Angular Components?
+
Angular Elements are Angular components packaged as custom
elements to use in non-Angular apps.
Angular Material and Bootstrap?
+
Angular Material provides Angular components with Material
Design; Bootstrap is CSS framework.
Angular service and singleton service?
+
Service is reusable class; singleton ensures a single instance
application-wide using providedIn: 'root'.
Angular Service Worker and Service Worker API?
+
Angular Service Worker integrates with Angular for PWA
features; Service Worker API is native browser API.
AngularJS and Angular?
+
AngularJS is based on JavaScript (v1.x); Angular (v2+) is based
on TypeScript and component-based architecture.
CanActivate and CanDeactivate guards?
+
CanActivate controls route access; CanDeactivate controls
leaving a route.
CatchError and retry operators in RxJS?
+
catchError handles errors; retry retries failed requests a
specified number of times.
window.history manipulates browser history; Angular Router
manages SPA routes without full page reload.
DiffBet Angular and AngularJS
+
AngularJS (1.x) uses JavaScript and MVC., Angular (2+) uses
TypeScript, components, and modules., Angular is faster, modular, and supports Ivy
compiler.
DiffBet Angular and Backbone.js
+
Angular: MVVM, components, DI, two-way binding., Backbone.js:
Lightweight, MVC, manual DOM manipulation., Angular offers more structured
development and tooling.
DiffBet Angular and jQuery
+
Angular: Full SPA framework, two-way binding, MVVM., jQuery:
DOM manipulation library, no architecture.
DiffBet Angular expressions and JavaScript expressions
+
Angular expressions are safe and auto-sanitized., Run within
Angular context and cannot use loops or exceptions.
DiffBet AngularJS and Angular?
+
AngularJS is JavaScript-based and uses MVC architecture.,
Angular (2+) is TypeScript-based, faster, modular, and uses components., Angular
supports mobile development and modern tooling., Angular has better performance, AOT
compilation, and enhanced dependency injection.
DiffBet Annotation and Decorator
+
Annotation: Metadata in older frameworks., Decorator (Angular):
Adds metadata and behavior to classes, properties, or methods.
DiffBet Component and Directive
+
Component: Has template + logic, renders UI., Directive: No
template, modifies DOM behavior., Component is a type of directive with a view.
DiffBet constructor and ngOnInit
+
constructor: Instantiates the class, used for dependency
injection., ngOnInit: Lifecycle hook, executes after inputs are initialized., Use
ngOnInit for initialization logic instead of constructor.
DiffBet interpolated content and innerHTML
+
Interpolation ({{ }}) is automatically sanitized by Angular.,
innerHTML can bypass sanitization if used with untrusted content., Interpolation is
safer for user-generated content.
DiffBet ngIf and hidden property
+
ngIf adds/removes element from DOM., [hidden] hides element but
keeps it in DOM., Use ngIf for conditional rendering and hidden for styling.
DiffBet NgModule and JavaScript module
+
NgModule defines Angular metadata (components, directives,
services)., JavaScript module only exports/imports variables or classes.
DiffBet promise and observable
+
Promise: Handles single async value; executes immediately.,
Observable: Can emit multiple values over time; lazy execution., Observable supports
operators, cancellation, and chaining.
DiffBet pure and impure pipe
+
Pure Pipe: Executes only when input changes; optimized for
performance., Impure Pipe: Executes on every change detection; can handle complex
scenarios., Impure pipes can cause performance overhead.
Differences between AngularJS and Angular
+
AngularJS: JS-based, uses MVC, two-way binding., Angular:
TypeScript-based, component-driven, improved performance., Angular has better mobile
support and modular architecture.
Differences between AngularJS and Angular for DI
+
AngularJS uses function-based injection with $inject., Angular
uses class-based injection with @Injectable() decorators., Angular DI supports
hierarchical injectors and tree-shakable services.
Differences between reactive and template-driven forms
+
Reactive: Model-driven, synchronous, testable.,
Template-driven: Template-driven, simpler, less scalable., Reactive supports dynamic
controls; template-driven does not.
Differences between various versions of Angular
+
AngularJS (1.x) is JavaScript-based and uses MVC., Angular 2+
is TypeScript-based, component-driven, modular, and faster., Later versions added
Ivy compiler, CLI improvements, RxJS updates, and stricter type checking., Each
version focuses on performance, security, and tooling enhancements.
Different types of compilation in Angular
+
JIT (Just-in-Time): Compiles in the browser at runtime., AOT
(Ahead-of-Time): Compiles at build time.
Different ways to group form controls
+
FormGroup: Groups multiple controls logically., FormArray:
Groups controls dynamically as an array., Nested FormGroups for hierarchical
structures.
Digest cycle in AngularJS.
+
The digest cycle is the internal process where AngularJS checks
for model changes and updates the view. It compares current and previous values in
watchers and continues until all bindings stabilize. It runs automatically during
events handled by Angular.
Directive in Angular?
+
Directive is a class that can modify DOM behavior or structure.
Directives in Angular
+
Directives are instructions for the DOM., Types: Attribute,
Structural (*ngIf, *ngFor), and Custom directives., They modify the behavior or
appearance of elements.
Directives in Angular?
+
Instructions to manipulate DOM., Types: Structural (*ngIf,
*ngFor) and Attribute ([ngClass], [ngStyle]).
Directives?
+
Directives are instructions in templates to manipulate DOM.,
Types: Structural (*ngIf, *ngFor) and Attribute ([ngClass])., They modify
appearance, behavior, or layout of elements.
Do I need a Routing Module always?
+
Not strictly, but recommended for modularity., Helps separate
route configuration from main app module., Improves maintainability and scalability.
Do I need to bootstrap custom elements?
+
No, Angular Elements are self-bootstrapped using
createCustomElement().
Do I still need entryComponents in Angular 9?
+
No, Ivy compiler handles dynamic and bootstrapped components
automatically.
Do you perform error handling?
+
Use RxJS catchError or pipe with tap:,
this.http.get('api').pipe(catchError(err => of([])));, Allows graceful fallback or
logging.
Does Angular prevent HTTP-level vulnerabilities?
+
Angular provides HttpClient with built-in CSRF/XSRF support.,
Prevents common HTTP attacks if configured correctly., Additional server-side
measures may still be required.
Does Angular support dynamic imports?
+
Yes, using import() syntax for lazy-loaded modules., Enables
code splitting and reduces initial bundle size., Works seamlessly with Angular CLI
and Webpack.
DOM sanitizer?
+
Service that cleans untrusted content before rendering., Used
for HTML, styles, URLs, and resource URLs., Prevents script execution in Angular
apps.
Dynamic components
+
Components created programmatically at runtime., Use
ComponentFactoryResolver or ViewContainerRef.createComponent(), Useful for modals,
tabs, or runtime content.
Dynamic forms
+
Forms created programmatically at runtime., Useful when form
structure is not known at compile-time., Built using FormBuilder or reactive APIs.
Eager and Lazy loading?
+
Eager loading: Loads all modules at app startup., Lazy loading:
Loads modules on demand, improving initial load time.
Editor support for Angular Language Service
+
Supported in VS Code, WebStorm, Sublime, and Atom., Provides
autocompletion, quick info, error detection, and navigation in templates.
Enable binding expression validation?
+
Enable it via "strictTemplates": true in
angularCompilerOptions., It validates property and event bindings in templates.,
Prevents runtime template errors and improves type safety.
Entry component?
+
Component instantiated dynamically, not referenced in
template., Used in modals, dialogs, or dynamically created components.
EntryComponents array not necessary every time?
+
Angular 9+ uses Ivy compiler, which automatically detects
required components., No manual entryComponents needed for dynamic components.
Event binding in Angular?
+
Event binding binds events from DOM elements to component
methods using (event) syntax.
Exactly is a parameterized pipe?
+
A pipe that accepts arguments to modify output., Example: {{
birthday | date:'shortDate' }} where 'shortDate' is a parameter.
Exactly is the router state?
+
Router state is the current configuration and URL state of the
Angular router., Includes active routes, parameters, query parameters, and route
data.
Example of built-in validators
+
name: new FormControl('', [Validators.required,
Validators.minLength(3)]), Applies required and minimum length validation.
Example of few metadata errors
+
Using arrow functions in decorators., Dynamic expressions in
@Input() default values., Referencing non-static properties in metadata.
Autocomplete for directives, components, and inputs, Error
checking in templates, Quick info on variables and types, Navigation to component
and template definitions
Find Angular CLI version
+
Run command: ng version or ng v in terminal., It shows Angular
CLI, framework, and Node versions.
Folding?
+
Folding is the process of resolving expressions at compile
time., Helps AOT replace constants and simplify templates.
ForRoot helps avoid duplicate router instances
+
forRoot() ensures singleton services in shared modules.,
Lazy-loaded modules can use forChild() without duplicating router.
Command: ng generate class my-class, Creates a TypeScript class
file in project structure.
Get current direction for locales
+
Use Directionality service: dir.value returns 'ltr' or 'rtl'.,
Useful for layout adjustments in RTL languages.
Get the current route?
+
Use Angular ActivatedRoute or Router service., Example:
this.route.snapshot.url or this.router.url., It provides access to route parameters,
query params, and path info.
Give an example of attribute directives
+
Attribute directives change the appearance or behavior of DOM
elements., Example:,
Give an example of custom pipe
+
A custom pipe transforms data in templates., Example:,
@Pipe({name: 'reverse'}), export class ReversePipe implements PipeTransform {,
transform(value: string) { return value.split('').reverse().join(''); }, }, Usage:
{{ 'Angular' | reverse }} → ralugnA.
Guard in Angular?
+
Guard is a service to control access to routes, e.g.,
CanActivate, CanDeactivate.
Happens if custom id is not unique
+
Angular may overwrite translations or throw errors., Unique IDs
prevent conflicts and ensure correct mapping.
Happens if I import the same module twice?
+
Angular does not create duplicate services if a module is
imported multiple times., Components and directives are available where declared.,
Providers are instantiated only once at root level.
Happens if you do not supply handler for the observer
+
No callback is executed; observable executes but subscriber
ignores emitted values., No error or complete handling occurs.
Happens if you use script tag inside template?
+
Angular does not execute script tags in templates for
security., Scripts are ignored to prevent XSS attacks., Use services or component
logic instead.
Happens if you use the script tag within a template?
+
Scripts in Angular templates do not execute for security
reasons (DOM sanitization)., Use external scripts or component logic instead.
Http Interceptors?
+
Classes that intercept HTTP requests and responses globally.,
Can modify headers, log activity, or handle errors., Implemented via
HTTP_INTERCEPTORS token.
HttpClient and its benefits?
+
HttpClient is Angular’s service for HTTP communication.,
Supports typed responses, interceptors, and observables., Simplifies REST API calls
with automatic JSON parsing.
HttpInterceptor in Angular?
+
Interceptor is a service to modify HTTP requests or responses
globally.
Hydration?
+
Hydration converts server-rendered HTML into a fully
interactive client app., Used in Angular Universal for SSR (Server-Side Rendering).
If BrowserModule used in feature module?
+
Error occurs: BrowserModule should only be imported in
AppModule., Feature modules should use CommonModule instead.
Imported modules in CLI-generated feature modules
+
CommonModule for common directives., FormsModule if forms are
used., RouterModule for routing inside the feature module.
Impure Pipes
+
Impure pipes may return different output even if input is
same., Executed on every change detection cycle., Useful for dynamic or async data
transformations.
Include SASS into an Angular project?
+
Install node-sass or use Angular CLI:, ng config
schematics.@schematics/angular:component.style scss, Rename .css files to .scss.,
Angular compiles SASS into CSS automatically.
Index property in ngFor directive
+
let i = index gives the current iteration index., Can be used
for numbering items or conditionally styling elements.
Inject dynamic script in Angular?
+
Use Renderer2 or document.createElement('script') in a
component., Set src and append it to document.body., Ensure scripts are loaded after
component initialization.
Install Angular Language Service in a project?
+
Use NPM: npm install @angular/language-service --save-dev.,
Also, enable it in your IDE (VS Code, WebStorm) for Angular templates.
Interpolation in Angular?
+
Interpolation allows embedding expressions in HTML using {{
expression }} syntax.
Interpolation?
+
Interpolation binds component data to HTML view using {{ }}.,
Example:
Invoke a builder?
+
In Angular, a builder is invoked via angular.json or the CLI.,
Use commands like ng build or ng run :., Builders handle tasks like building,
serving, or testing projects., They are customizable via options in the angular.json
configuration.
Is aliasing possible for inputs and outputs?
+
Yes, using @Input('aliasName') or @Output('aliasName')., Allows
different property names externally vs internally.
Is bootstrapped component required to be entry component?
+
Yes, it must be included in entryComponents in Angular versions
<9., In Angular 9+ (Ivy), entryComponents array is no longer needed.
Is it mandatory to use @Injectable on every service?
+
Only required if the service has dependencies injected.,
Recommended for consistency and AOT compatibility.
Is it safe to use direct DOM API methods?
+
No, direct DOM manipulation may bypass Angular security.,
It can introduce XSS risks., Prefer Angular templates, bindings, or Renderer2.
Is static flag mandatory for ViewChild?
+
static: true/false required when accessing child elements
in ngOnInit vs ngAfterViewInit., true for early access, false for later
lifecycle access.
It helps determine what component should be displayed.
+
Router links?, Router links ([routerLink]) are Angular
directives to navigate between routes., Example: Home.
JIT?
+
JIT compiles Angular templates in the browser at runtime.,
Faster builds but slower app startup., Used mainly during development.
Key components of Angular
+
Component: UI + logic, Directive: Behavior or DOM
manipulation, Module: Organizes components, Service: Shared logic/data, Pipe:
Data transformation, Routing: Navigation between views
Lazy loading in Angular?
+
Lazy loading loads modules only when needed, improving
performance.
Lifecycle hooks available
+
Common hooks:, ngOnInit - after component initialization,
ngOnChanges - on input property change, ngDoCheck - custom change detection,
ngOnDestroy - cleanup before component removal
Lifecycle hooks in Angular?
+
Lifecycle hooks are methods called at specific points in a
component's life, e.g., ngOnInit, ngOnDestroy.
Lifecycle hooks in Angular? Examples?
+
Lifecycle hooks allow execution of logic at specific
component stages. Common hooks include:, · ngOnInit() - initialization, ·
ngOnChanges() - when input properties change, · ngOnDestroy() - cleanup before
removal, · ngAfterViewInit() - when view loads
Lifecycle hooks of a zone
+
onStable: triggered when zone has no pending tasks.,
onUnstable: triggered when async tasks start., onMicrotaskEmpty: after
microtasks complete.
Lifecycle hooks? Explain a few.
+
Lifecycle hooks are methods called at specific component
stages., Examples:, ngOnInit: Initialization, ngOnChanges: Detect input changes,
ngOnDestroy: Cleanup before destruction, They help manage component behavior.
Limitations with web workers
+
Cannot access DOM directly, Limited access to window or
document objects, Cannot use Angular services directly, Communication is via
messages only
Angular supports: zero, one, two, few, many, other., Used
in ICU plural expressions.
Macros?
+
Macros are predefined expressions or reusable snippets in
Angular compilation., Used to simplify repeated patterns in metadata or
templates.
Manually bootstrap an application
+
Use platformBrowserDynamic().bootstrapModule(AppModule) in
main.ts., Starts Angular without relying on automatic bootstrapping.
Manually register locale data
+
Import locale from @angular/common and register:, import {
registerLocaleData } from '@angular/common';, import localeFr from
'@angular/common/locales/fr';, registerLocaleData(localeFr);
Mapping rules between Angular component and custom element
+
Component inputs → element attributes/properties, Component
outputs → DOM events, Lifecycle hooks are preserved automatically
Metadata rewriting?
+
Metadata rewriting updates compiled metadata JSON files for
AOT., Allows Angular to optimize templates and components at build time.
Metadata?
+
Metadata provides additional info about classes to
Angular., Used via decorators like @Component and @NgModule., Tells Angular how
to process a class.
Method decorators?
+
Decorators applied to methods to modify or enhance
behavior., Example: @HostListener listens to events on host elements.
Methods of NgZone to control change detection
+
run(): execute inside Angular zone (triggers detection).,
runOutsideAngular(): execute outside detection., onStable, onUnstable for
subscriptions.
Module in Angular?
+
Modules group components, directives, pipes, and services
into cohesive blocks of functionality.
Multicasting?
+
Multicasting allows sharing a single observable execution
among multiple subscribers., Achieved using Subject or share() operator.,
Reduces unnecessary API calls or processing.
MVVM Architecture
+
Model-View-ViewModel separates UI, logic, and data., Model:
Data and business logic., View: User interface., ViewModel: Mediator between
view and model, handles commands and data binding., Promotes testability and
clean separation of concerns.
Navigating between routes in Angular
+
Use RouterLink or Router service:, Home, Or
programmatically: this.router.navigate(['/home']);
NgAfterContentInit in Angular?
+
ngAfterContentInit is called after content projected into
component is initialized.
NgAfterViewInit in Angular?
+
ngAfterViewInit is called after component's view and child
views are initialized.
Ngcc
+
Angular Compatibility Compiler converts node_modules
packages compiled with View Engine to Ivy., Ensures libraries are compatible
with Angular Ivy compiler.
Ng-content and its purpose?
+
is a placeholder in a component template., Used for content
projection, letting parent content be rendered in child components.
NgModule in Angular?
+
NgModule is a decorator that defines a module and its
metadata, like declarations, imports, providers, and bootstrap.
NgOnDestroy in Angular?
+
ngOnDestroy is called just before component destruction to
clean up resources.
NgOnInit in Angular?
+
ngOnInit is called once after component initialization.
NgOnInit?
+
ngOnInit is a lifecycle hook called after Angular
initializes a component., Used to perform component initialization and fetch
data., Runs once per component instantiation.
NgRx?
+
NgRx is a state management library for Angular., Based on
Redux pattern, uses actions, reducers, and store., Helps manage complex
application state predictably.
NgUpgrade?
+
NgUpgrade allows hybrid apps running AngularJS and Angular
together., Facilitates incremental migration from AngularJS to Angular.,
Supports components, services, and routing interoperability.
NgZone
+
NgZone is a service that manages Angular’s change detection
context., It runs code inside or outside Angular zone to control updates
efficiently.
Non-null type assertion operator?
+
The ! operator asserts that a value is not null or
undefined., Example: value!.length tells TypeScript the variable is safe., Used
to prevent compiler errors when you know the value exists.
NoopZone
+
A no-operation zone that disables automatic change
detection., Useful for performance optimization in large apps.
Observable creation functions
+
of() - emits given values, from() - converts array, promise
to observable, interval() - emits sequence periodically, fromEvent() - listens
to DOM events
Observable in Angular?
+
Observable represents a stream of asynchronous data that
can be subscribed to.
Observable?
+
Observable is a stream of data over time., It can emit
next, error, and complete notifications., Used for HTTP, events, and async
tasks.
Observables different from promises?
+
Observables can emit multiple values over time, promises
only one., Observables are lazy and cancellable., Promises are eager and
simpler., Observables support operators for transformation and filtering.
Observables vs Promises
+
Observables: Multiple values over time, cancellable, lazy
evaluation., Promises: Single value, eager, not cancellable., Observables are
used with RxJS in Angular.
Observables?
+
Observables are data streams that emit values over time.,
They allow asynchronous operations like HTTP requests or events., Provided by
RxJS in Angular.
Observer?
+
An observer is an object that listens to an observable., It
has methods: next, error, and complete., Example: { next: x => console.log(x),
error: e => console.log(e) }.
Operators in RxJS?
+
Operators are functions to transform, filter, or combine
Observables, e.g., map, filter, mergeMap.
Optimize performance of async validators
+
Use debounceTime to reduce API calls., Use
distinctUntilChanged for unique inputs., Avoid heavy computation inside
validator function.
Option to choose between inline and external template file
+
In @Component decorator:, template - inline HTML,
templateUrl - external HTML file, Choice depends on component size and
readability., *21. Purpose of ngFor directive, *ngFor is used to loop over a
collection and render elements., Syntax: *ngFor="let item of items"., Useful for
dynamic lists and tables., *22. Purpose of ngIf directive, *ngIf conditionally
renders elements based on boolean expression., Removes or adds elements from the
DOM., Helps control UI dynamically.
Optional dependency
+
A dependency that may or may not be provided., Use
@Optional() decorator in constructor injection.
Parameterized pipe?
+
Pipes that accept arguments to modify output., Example: {{
amount | currency:'USD':true }}, Allows flexible data formatting in templates.
Parent to Child data sharing example
+
Parent Component:, , Child Component:, @Input() childData:
string;, This passes parentData from parent to child.
Pass headers for HTTP client?
+
Use HttpHeaders in Angular’s HttpClient., Example:,
this.http.get(url, { headers: new HttpHeaders({'Auth':'token'}) }), Allows
sending authentication, content-type, or custom headers.
Perform error handling in observables?
+
Use catchError operator inside .pipe()., Example:
observable.pipe(catchError(err => of(defaultValue))), Can also use retry() to
retry failed requests.
Pipe in Angular?
+
Pipe transforms data in templates, e.g., date, currency,
custom pipes.
Pipes in Angular?
+
Pipes transform data before displaying in a template.,
Example: {{ name | uppercase }} converts text to uppercase., Can be built-in or
custom.
Pipes?
+
Pipes transform data in the template without changing the
component., Example: {{date | date:'short'}}, Angular has built-in pipes like
DatePipe, UpperCasePipe, CurrencyPipe.
PipeTransform Interface
+
Interface that custom pipes must implement., Defines the
transform() method for input-to-output transformation., Enables reusable data
formatting.
Platform in Angular?
+
Platform provides runtime context for Angular
applications., Examples: platformBrowser(), platformServer()., It bootstraps the
Angular application on the respective environment.
Possible data update scenarios for change detection
+
Model updates via property binding, User input in forms,
Async operations like HTTP requests, timers, Manual triggering using
ChangeDetectorRef
Possible errors with declarations
+
Declaring a component twice in different modules, Declaring
non-component classes, Missing component import in module
Precedence between pipe and ternary operators
+
Ternary operators have higher precedence., Pipe (|)
executes after ternary expression evaluates.
Prevent automatic sanitization
+
Use Angular DomSanitizer to mark content as trusted:,
bypassSecurityTrustHtml, bypassSecurityTrustUrl, etc., Use carefully to avoid
XSS vulnerabilities.
Prioritize TypeScript over JavaScript in Angular?
+
TypeScript provides strong typing, classes, interfaces, and
compile-time checks., Improves developer productivity and maintainability.
Property binding in Angular?
+
Property binding binds component properties to HTML element
properties using [property] syntax.
Property decorators?
+
Decorators that enhance class properties with Angular
features., Example: @Input() for parent-to-child binding, @Output() for event
emission.
Protractor?
+
Protractor is an end-to-end testing framework for Angular
apps., It runs tests in real browsers and integrates with Selenium., It
understands Angular-specific elements like ng-model and ng-repeat.
Provide a singleton service
+
Use @Injectable({ providedIn: 'root' })., Angular injects
one instance app-wide., Do not redeclare in feature modules to avoid duplicates.
Provide build configuration for multiple locales
+
Use angular.json configurations:, "locales": { "fr":
"src/locale/messages.fr.xlf" }, Build with: ng build --localize.
Provide configuration inheritance?
+
Angular modules can extend or import other modules., Child
modules inherit providers, declarations, and configurations from parent
modules., Helps maintain shared settings across the app.
Provider?
+
A provider tells Angular how to create a service., It
defines the dependency injection configuration., Declared in modules,
components, or services.
Pure Pipes
+
Pure pipes return same output for same input., Executed
only when input changes., Used for performance optimization.
Purpose of tag
+
Specifies the base path for relative URLs in an Angular
app., Helps router resolve paths correctly., Placed in the section of
index.html., Example: .
Purpose of animate function
+
animate() specifies duration, timing, and styles for
transitions., It animates the element from one style to another., Used inside
transition() to control animation flow.
Purpose of any type cast function?
+
The any type allows bypassing TypeScript type checking., It
is used to temporarily cast a variable when type is unknown., Useful during
migration or working with dynamic data.
Purpose of async pipe
+
async pipe automatically subscribes to Observable or
Promise., It updates the template with emitted values., Handles subscription and
unsubscription automatically.
Purpose of CommonModule?
+
CommonModule provides common directives like ngIf and
ngFor., It is imported in feature modules to use standard Angular directives.,
Helps avoid reimplementing basic functionality.
Purpose of custom id
+
Assigns a unique identifier to a translatable string.,
Helps maintain consistent translations across builds.
Purpose of differential loading in CLI
+
Generates two bundles: modern ES2015+ for new browsers, ES5
for old browsers., Reduces payload for modern browsers., Improves performance
and load time.
Purpose of FormBuilder
+
Simplifies creation of FormGroup, FormControl, and
FormArray., Reduces boilerplate code for reactive forms.
Purpose of hidden property
+
[hidden] toggles visibility of an element using CSS
display: none., Unlike ngIf, it does not remove the element from the DOM.
Purpose of i18n attribute
+
Marks an element or text for translation., Angular extracts
these for generating translation files.
Purpose of innerHTML
+
innerHTML sets or gets the HTML content of an element.,
Used for dynamic HTML rendering in the DOM.
Purpose of metadata JSON files
+
Store compiled metadata about components, directives, and
modules., Used by AOT compiler for dependency injection and code generation.
Purpose of ngFor trackBy
+
trackBy improves performance by tracking items using unique
identifier., Prevents unnecessary DOM re-rendering when lists change.
Purpose of ngSwitch directive
+
ngSwitch conditionally displays elements based on
expression value., ngSwitchCase and ngSwitchDefault define cases and default
view.
Purpose of Wildcard route
+
Wildcard route (**) catches all undefined routes.,
Typically used for 404 pages., Example: { path: '**', component:
PageNotFoundComponent }.
Reactive forms
+
Form model is defined in component class using FormControl,
FormGroup., Provides predictable, programmatic control and validators.
Reason for No provider for HTTP exception
+
Occurs when HttpClientModule is not imported in AppModule.,
Add HttpClientModule to imports to resolve dependency injection errors.
Reason to deprecate Web Tracing Framework
+
It was browser-dependent and complex., Angular adopted
modern debugging tools and console-based tracing., Simplifies performance
monitoring and reduces maintenance.
Reason to deprecate web worker packages
+
Native Web Worker APIs became standardized., Angular moved
to simpler, built-in worker support., External packages were redundant and
increased bundle size.
Recommendation for provider scope
+
Provide services in root for singleton usage., Avoid
multiple registrations in lazy-loaded modules unless necessary., Use feature
module providers for module-scoped instances.
ReplaySubject in Angular?
+
ReplaySubject emits a specified number of previous values
to new subscribers.
Report missing translations
+
Angular logs missing translations in console during
compilation., Use tools or custom loaders to handle untranslated keys.
Reset the form
+
Use form.reset() to reset values and validation state.,
Optionally, pass default values: form.reset({ name: 'John' }).
Restrict provider scope to a module
+
Declare the provider in the providers array of the module.,
Avoid providedIn: 'root' in @Injectable()., This creates a module-specific
instance.
Restrictions of metadata
+
Cannot use dynamic expressions in decorators., Arrow
functions or complex expressions are not allowed., Only static, serializable
values are permitted.
Restrictions on declarable classes
+
Declarables cannot be services or modules., They must be
declared in exactly one NgModule., Cannot be imported multiple times across
modules.
Role of ngModule metadata in compilation process
+
Defines components, directives, pipes, and services., Helps
compiler resolve dependencies and build module graph.
Role of template compiler for XSS prevention
+
The compiler escapes unsafe content during template
rendering., Ensures dynamic content does not execute scripts., Acts as a
first-line defense against XSS.
Root module in Angular?
+
The AppModule is the root module bootstrapped to launch the
application.
Route Parameters?
+
Data passed through URLs to routes., Path parameters:
/user/:id, Query parameters: /user?id=1, Fragment: #section1, Matrix parameters:
/user;id=1
Routed entry component?
+
Component loaded via router dynamically, not referenced in
template., Needs to be known to Angular compiler to generate factory.
Router events?
+
Router events are lifecycle events during navigation.,
Examples: NavigationStart, RoutesRecognized, NavigationEnd, NavigationError.,
You can subscribe to Router.events for tracking navigation.
Router imports?
+
To use routing, import:, RouterModule, Routes from
@angular/router, Then configure routes using RouterModule.forRoot(routes) or
forChild(routes).
Router links?
+
[routerLink] is used for navigation without page reload.,
Example: Home, It generates URLs based on route configuration.
Router outlet?
+
is a placeholder where routed components are displayed.,
The router dynamically injects the matched component here., Only one per view or
multiple for nested routes.
Router state?
+
Router state represents current route information.,
Contains URL, params, queryParams, and component data., Accessible via Router or
ActivatedRoute service.
RouterModule in Angular?
+
RouterModule provides services and directives for
configuring routing.
Routing in Angular?
+
Routing enables navigation between different views in a
single-page application.
Rule in Schematics?
+
A rule defines transformations on a project tree., It
decides how files are created, modified, or deleted., Rules are building blocks
of schematics.
Run Bazel directly?
+
Use Bazel CLI commands: bazel build //src:app or bazel test
//src:app., It executes targets defined in BUILD files., Helps in running
incremental builds independently of Angular CLI.
RxJS in Angular?
+
RxJS is a library for reactive programming., Used with
observables to handle async data, events, and streams., Provides operators like
map, filter, and debounceTime.
RxJS Subject in Angular?
+
Subject is an observable that multicasts values to multiple
observers., It can act as both an observer and observable., Used for
communication between components or services.
RxJS?
+
RxJS (Reactive Extensions for JavaScript) is a library for
reactive programming., Provides observables, operators, and subjects., Used for
async tasks and event handling in Angular.
Safe navigation operator?
+
?. operator prevents null or undefined errors in
templates., Example: user?.name returns undefined if user is null.
Sanitization? Does Angular support it?
+
Sanitization cleans untrusted input to prevent code
injection., Angular provides built-in DomSanitizer for HTML, styles, URLs, and
scripts.
Schematic?
+
Schematics are code generators for Angular projects., They
automate creation of components, services, modules, or custom templates., Used
with Angular CLI.
Schematics CLI?
+
Command-line tool to run, test, and create schematics.,
Example: schematics blank --name=my-schematic., Helps automate repetitive tasks
in Angular projects.
Scope hierarchy in Angular
+
Angular components have isolated scopes with hierarchical
injectors., Child components inherit parent services via DI.
Scope in Angular
+
Scope is the binding context between controller and view.,
Used in AngularJS; replaced by Component class properties in Angular.
Security principles in Angular
+
Follow XSS prevention, CSRF protection, input validation,
and sanitization., Avoid direct DOM manipulation and unsafe URL usage., Use
Angular built-in sanitizers and HttpClient.
Select an element in component template?
+
Use template reference variables or @ViewChild()
decorator., Example: @ViewChild('myDiv') myDivElement: ElementRef;., This allows
accessing DOM elements or child components from the component class.
Select an element within a component template?
+
Use @ViewChild() or @ViewChildren() decorators., Example:
@ViewChild('myDiv') div: ElementRef;, Allows access to DOM elements or child
components in TS code.
Select ICU expression
+
Used for conditional translations based on variable
values., Example: gender-based messages: {gender, select, male {...} female
{...} other {...}}
Server-side XSS protection in Angular
+
Validate and sanitize inputs before sending to client., Use
CSP headers, HTTPS, and server-side escaping., Combine with Angular client-side
protections.
Service in Angular?
+
Service is a class that provides shared functionality
across components.
Service Worker and its role in Angular?
+
Service Worker is a background script that intercepts
network requests., It enables offline caching, push notifications, and
performance improvements., Angular supports Service Worker via @angular/pwa
package.
Services in Angular?
+
Reusable classes that hold business logic or shared data.,
Injected into components via DI., Helps separate UI and logic.
Set ngFor and ngIf on same element
+
Use :,
Share data between components in Angular?
+
Parent-to-child: @Input(), Child-to-parent: @Output() with
EventEmitter, Service with BehaviorSubject or Subject for unrelated components
Share services using modules?
+
Yes, but use Core module or providedIn: 'root'., Avoid
providing in Shared module to prevent multiple instances.
Shared module
+
A module containing reusable components, directives, pipes,
and services., Imported by other modules to reduce code duplication., Typically
does not provide singleton services.
Shorthand notation for subscribe method
+
Instead of an observer object, use separate callbacks:,
observable.subscribe(val => console.log(val), err => console.log(err), () =>
console.log('complete'));
Single Page Applications (SPA)
+
SPA loads one HTML page and dynamically updates content.,
Routing is handled on the client side., Improves speed and reduces server load.
Slice pipe?
+
Slice pipe extracts a subset of array or string., Example:
{{ items | slice:0:3 }} shows first 3 items., Useful for pagination or previews.
Some features of Angular
+
Component-based architecture., Two-way data binding and
dependency injection., Directives, services, and RxJS support., Powerful CLI for
project scaffolding.
SPA? (Single Page Application)
+
A SPA loads a single HTML page and dynamically updates
content using JavaScript without full page reloads. Unlike traditional websites
where each action loads a new page, SPAs improve speed, user experience, and
reduce server load.
Special configuration for Angular 9?
+
Angular 9 uses Ivy compiler by default., No additional
configuration is needed for most apps.
Specify Angular template compiler options?
+
Template compiler options are specified in tsconfig.json or
angular.json., You can enable strict type checking, full template type checking,
and other options., Example: "angularCompilerOptions": { "strictTemplates": true
}., It helps catch template errors at compile time.
Standalone component?
+
A component that does not require a module., Can be used
independently with its own imports, providers, and declarations.
State CSS classes provided by ngModel
+
ng-valid, ng-invalid, ng-dirty, ng-pristine, ng-touched,
ng-untouched, Helps style form validation states.
State function?
+
state() defines a named state for an animation., It
specifies styles associated with that state., Used in combination with
transition() to animate between states.
Steps to use animation module
+
1. Install @angular/animations., 2. Import
BrowserAnimationsModule in the root module., 3. Use trigger, state, style,
animate, and transition in components., 4. Bind animations to templates using [
@triggerName ].
Steps to use declaration elements
+
1. Declare component, directive, or pipe in NgModule., 2.
Export if needed for other modules., 3. Import module in consuming module., 4.
Use element in template.
String interpolation and property binding.
+
String interpolation: {{ value }} inserts data into
templates., Property binding: [property]="value" binds data to element
properties., Both keep view and data synchronized.
String interpolation in Angular?
+
Binding data from component to template using {{ value }}.,
Automatically updates the DOM when the component value changes.
Style function?
+
style() defines CSS styles to apply in a particular state
or keyframe., Used inside state(), transition(), or animate()., Example: style({
opacity: 0, transform: 'translateX(-100%)' }).
Subject in Angular?
+
Subject is an Observable that allows multicasting to
multiple subscribers.
Subscribing?
+
Subscribing is listening to an observable., Example:
.subscribe(data => console.log(data));, Triggers execution and receives emitted
values.
Template expressions?
+
Template expressions are evaluated inside interpolation or
binding., Can include properties, methods, operators., Cannot contain statements
like loops or conditionals.
Template statements?
+
Template statements handle events like (click) or
(change)., Invoke component methods in response to user actions., Example: Click
Template?
+
Template is the HTML view of a component., It defines
structure, layout, and binds data using Angular syntax., Can include directives,
bindings, and pipes.
Template-driven forms
+
Forms defined directly in HTML template using ngModel.,
Less control but simpler for small forms.
Templates in Angular
+
Templates define the HTML view of a component., They can
contain Angular directives, bindings, and expressions., Templates are combined
with component logic to render the UI.
Templates in Angular?
+
HTML with Angular directives, bindings, and components.,
Defines the view for a component.
Test Angular application using CLI?
+
Use ng test to run unit tests with Karma and Jasmine., Use
ng e2e for end-to-end testing with Protractor or Cypress., CLI manages
configurations and test runner setup automatically.
TestBed?
+
TestBed is Angular’s unit testing utility for configuring
and initializing environment., It allows creating components, services, and
modules in isolation., Used with Karma or Jasmine to run tests.
Three phases of AOT
+
1. Metadata analysis: Parse decorators and template
metadata., 2. Template compilation: Convert templates to TypeScript code., 3.
Code generation: Emit optimized JavaScript for the browser.
Transfer components to custom elements
+
Use createCustomElement(Component, { injector }), Register
via customElements.define('tag-name', element).
Transition function?
+
transition() defines how animations move between states.,
It specifies conditions, duration, and easing for the animation., Example:
transition('open => closed', animate('300ms ease-in')).
Translate an attribute
+
Add i18n-attribute to mark element attributes: Welcome,
Translate text without creating an element
+
Use i18n attribute on existing elements or directives.,
Angular supports inline translations for text content.
Transpiling in Angular?
+
Transpiling converts TypeScript or modern JavaScript into
plain JavaScript., This ensures compatibility with browsers., Angular uses the
TypeScript compiler (tsc) for this process., It helps leverage ES6+ features
safely in older browsers.
Trigger an animation
+
Use Angular Animation API: trigger, state, transition,
animate., Call animation in template with [@animationName]., Can also trigger
via component methods.
Two-way binding in Angular?
+
Two-way binding synchronizes data between component and
template using [(ngModel)].
Two-way data binding
+
Updates component model when view changes and vice versa.,
Implemented using [(ngModel)]., Simplifies form handling.
Type narrowing?
+
Type narrowing is the process of refining a variable’s
type., TypeScript uses control flow analysis like if, typeof, or instanceof.,
Example: if (typeof x === "string") { x.toUpperCase(); }
Eager-loaded modules: Loaded at app startup., Lazy-loaded
modules: Loaded on demand via routing., Shared modules: Contain reusable
components, directives, pipes., Core module: Provides singleton services.
Types of filters in AngularJS.
+
Filters format data displayed in the UI. Common filters
include:, ✓ currency (formats currency), ✓ date (formats date), ✓ filter
(filters arrays), ✓ uppercase/lowercase, ✓ orderBy (sorts collections),
TestBed APIs now return strongly typed component and
fixture instances., Improves type checking in unit tests.
TypeScript class with constructor and function
+
class Person {, constructor(public name: string) {},
greet() { console.log(`Hello ${this.name}`); }, }, let p = new Person("John");,
p.greet();
Update specific properties of a form model
+
Use patchValue() for partial updates., setValue() requires
all properties to be updated., Example: form.patchValue({ name: 'John' }).
Upgrade Angular version?
+
Use ng update @angular/core @angular/cli., Follow migration
guides for breaking changes., CLI updates dependencies, TypeScript, and
configuration automatically.
Upgrade location service of AngularJS?
+
Migrate $location service to Angular’s Router module.,
Update code to use Router.navigate() or ActivatedRoute., Ensures smooth URL and
state management in Angular.
Use any JavaScript feature in expression syntax for AOT?
+
No, only static and serializable expressions are allowed.,
Dynamic or runtime JavaScript features are rejected.
Use AOT compilation with Ivy?
+
Yes, Ivy fully supports AOT (Ahead-of-Time) compilation.,
It improves startup performance and catches template errors at compile time.
Use arrow functions in AOT?
+
No, arrow functions are not allowed in decorators or
metadata., AOT requires static, serializable expressions.
Use Bazel with Angular CLI?
+
Install Bazel schematics: ng add @angular/bazel., Build or
test projects using Bazel commands: ng build --bazel., It replaces default
Webpack builder for performance optimization.
Use HttpClient with an example
+
Inject HttpClient in a service:, this.http.get
('api/users').subscribe(data => console.log(data));, Use .get, .post, .put,
.delete for REST calls., Returns observable streams.
Use interceptor for entire application
+
Provide it in AppModule providers:, providers: [{ provide:
HTTP_INTERCEPTORS, useClass: MyInterceptor, multi: true }], Ensures all HTTP
requests pass through it.
Use jQuery in Angular?
+
Install jQuery via npm: npm install jquery., Import it in
angular.json scripts or component: import * as $ from 'jquery';., Use carefully;
prefer Angular templates over direct DOM manipulation.
Use polyfills in Angular application?
+
Modify polyfills.ts file to enable browser compatibility.,
Includes support for older browsers (IE, Edge)., Polyfills ensure Angular
features work across different platforms.
Use SASS in Angular project?
+
Set --style=scss when creating project: ng new app
--style=scss., Or change file extensions to .scss and configure angular.json.,
Angular CLI automatically compiles SASS to CSS.
Utility functions provided by RxJS
+
Functions like of, from, interval, timer, throwError, and
fromEvent., Used to create or manipulate observables.
Various kinds of directives
+
Structural: *ngIf, *ngFor - modify DOM structure,
Attribute: [ngStyle], [ngClass] - change element behavior/appearance, Custom
directives: User-defined behaviors
Various security contexts in Angular
+
HTML (content in templates), Style (CSS binding), Script
(JavaScript context), URL (resource links), Resource URL (external resources)
Verify model changes in forms
+
Subscribe to valueChanges or statusChanges on form or
controls., Example: form.valueChanges.subscribe(val => console.log(val)).
View encapsulation in Angular?
+
Controls CSS scope in components., Types: Emulated
(default), None, Shadow DOM., Prevents styles from leaking or being overridden.
ViewEncapsulation? Types?
+
ViewEncapsulation controls styling scope in Angular
components., It has three modes:, · Emulated (default, scoped styles), · None
(global styles), · ShadowDom (real Shadow DOM isolation)
Ways to control AOT compilation
+
Enable/disable in angular.json using "aot": true/false.,
Use CLI commands: ng build --aot., Manage template metadata and decorators
carefully.
Ways to remove duplicate service registration
+
Provide service only in root., Avoid lazy-loaded module
providers for shared services., Use forRoot pattern for modules with services.
Ways to trigger change detection in Angular
+
User events (click, input) automatically trigger
detection., ChangeDetectorRef.detectChanges() manually triggers detection.,
NgZone.run() executes code inside Angular zone., Async operations via
Observables or Promises also trigger it.
Workspace APIs?
+
Workspace APIs allow managing Angular projects
programmatically., Used for creating, modifying, or generating projects and
configurations., Part of Angular DevKit (@angular-devkit/core).
Zone context
+
The environment that monitors async operations., Angular
uses it to know when to run change detection.
Zone?
+
Zone.js is a library used by Angular to detect asynchronous
operations., It helps Angular trigger change detection automatically., All async
tasks like setTimeout, promises, and HTTP requests are tracked.
API First Architecture
+
Advantages of api first?
+
Improves consistency, reduces rework, enables early
integration, supports microservices and multi-platform clients.
Api first architecture?
+
Designs the API before implementing business logic, ensuring
consistency, reusability, and collaboration with front-end and third-party teams.
Api first supports microservices?
+
APIs act as contracts between services, enabling independent
development, testing, and deployment.
Diffbet api first and code-first design?
+
API-first designs API before coding, focusing on contracts.
Code-first generates APIs from implementation, which may lack consistency.
Diffbet rest and graphql?
+
Rest exposes fixed endpoints; graphql allows clients to query
exactly what they need. both can follow api-first design.
Openapi (swagger)?
+
A specification for defining REST APIs, including endpoints,
payloads, responses, and authentication, supporting documentation and code
generation.
To handle security in api-first design?
+
Use OAuth2, JWT, API keys, TLS/HTTPS, and input validation.
APIs
+
API endpoint?
+
An endpoint is a specific URL where an API can access resources
or perform operations.
API monitoring?
+
API monitoring tracks performance, uptime, errors, and usage
patterns.
REST stand for?
+
REST stands for Representational State Transfer.
RESTful API?
+
A RESTful API follows REST principles using HTTP methods to
access resources.
REST constraints?
+
Client-server, statelessness, cacheability, uniform interface,
layered system, and optional code on demand.
HTTP GET do?
+
GET retrieves data from the server.
HTTP POST do?
+
POST creates a new resource.
HTTP PUT do?
+
PUT updates or replaces an existing resource.
HTTP PATCH do?
+
PATCH partially updates a resource.
HTTP DELETE do?
+
DELETE removes a resource.
Difference between PUT and PATCH?
+
PUT replaces the entire resource; PATCH updates only specific
fields.
Idempotency in REST?
+
An idempotent request produces the same result when repeated.
HTTP methods are idempotent?
+
GET, PUT, DELETE, and HEAD are idempotent.
HTTP status code?
+
A status code indicates the result of an HTTP request.
2xx status codes?
+
They indicate successful requests.
4xx status codes?
+
They indicate client-side errors.
5xx status codes?
+
They indicate server-side errors.
Content negotiation?
+
Content negotiation selects response format using headers like
Accept.
API design best practices?
+
API design best practices ensure APIs are consistent, scalable,
secure, and easy to use.
Good API design important?
+
Good API design improves usability, maintainability, and
developer adoption.
Naming convention should be used for REST APIs?
+
Use clear, meaningful, and plural nouns for resource names.
Should verbs be used in REST API URLs?
+
No, HTTP methods represent actions, not verbs in URLs.
Good REST API URL example?
+
/api/v1/users/{id}
Should nested resources be designed?
+
Use hierarchical URLs to represent relationships between
resources.
Versioning in API design?
+
Versioning manages API changes without breaking existing
clients.
Pagination in APIs?
+
Pagination limits the number of records returned in a response.
Pagination important?
+
It improves performance and reduces payload size.
Filtering in APIs?
+
Filtering restricts returned data based on criteria.
Sorting in APIs?
+
Sorting orders response data based on specified fields.
Field selection in APIs?
+
Field selection returns only required fields in the response.
Consistent error handling?
+
Using standardized error formats and HTTP status codes.
Authentication in APIs?
+
Authentication verifies the identity of the API consumer.
Authorization in APIs?
+
Authorization determines what resources an authenticated client
can access.
API key?
+
An API key is a simple token used to identify an API client.
API keys be used?
+
For basic identification and low-security scenarios.
JWT contain?
+
Header, payload, and signature.
JWT stateless?
+
All required authentication data is stored inside the token.
Secure API communication?
+
Using HTTPS, tokens, and proper authentication mechanisms.
Rate limiting in API security?
+
Limiting the number of requests to prevent abuse.
An API Gateway used?
+
To centralize authentication, routing, logging, and rate
limiting.
Eventual consistency allows data replicas to converge over time
without guaranteeing immediate consistency.
Explain idempotency.
+
Idempotency ensures that multiple identical requests produce
the same result without side effects.
Explain layered vs hexagonal architecture.
+
Layered architecture has rigid layers; hexagonal promotes
testable decoupled core business logic.
Explain message queue.
+
A message queue allows asynchronous communication between
components using messages.
Explain modular monolith.
+
A modular monolith organizes a single application into
independent modules to gain maintainability without full microservices complexity.
Explain mvc architecture.
+
MVC (Model-View-Controller) separates application logic: Model
handles data View handles UI and Controller handles input.
Explain mvc vs mvvm.
+
MVC separates Model View Controller; MVVM binds ViewModel with
View using data binding reducing Controller logic.
Explain oauth.
+
OAuth is an authorization protocol allowing third-party
applications to access user data without sharing credentials.
Explain polling vs webhooks.
+
Polling repeatedly checks for updates; webhooks notify
automatically when an event occurs.
Explain retry pattern.
+
Retry pattern resends failed requests with delays to handle
transient failures.
Explain rolling deployment.
+
Rolling deployment gradually replaces old instances with new
versions without downtime.
Explain rolling vs blue-green deployment.
+
Rolling deployment updates instances gradually; blue-green
deployment switches traffic between two identical environments.
Explain serverless architecture.
+
Serverless architecture runs code without managing servers; the
cloud provider handles infrastructure automatically.
Explain service discovery.
+
Service discovery automatically detects services and their
endpoints in dynamic environments.
Explain singleton pattern.
+
Singleton pattern ensures a class has only one instance and
provides a global access point.
Explain soap service.
+
SOAP service uses XML-based messages and strict protocols for
communication.
Explain sticky sessions.
+
Sticky sessions bind a client to a specific server instance to
maintain state across multiple requests.
Explain sticky vs stateless sessions.
+
Sticky sessions bind users to a server; stateless sessions
allow requests to be handled by any server.
Explain strategy pattern.
+
Strategy pattern defines a family of algorithms encapsulates
each and makes them interchangeable.
Explain synchronous vs asynchronous apis.
+
Synchronous APIs wait for a response; asynchronous APIs allow
processing in the background without waiting.
Explain the diffbet layered and microservices architectures.
+
Layered architecture is monolithic with multiple layers;
microservices split functionality into independently deployable services.
Explain the diffbet soa and microservices.
+
SOA is an enterprise-level architecture with larger services;
microservices break services into smaller independently deployable units.
Explain the diffbet synchronous and asynchronous
communication.
+
Synchronous communication waits for a response immediately;
asynchronous communication does not.
Explain the repository pattern.
+
The repository pattern abstracts data access logic providing a
clean interface to query and manipulate data.
Explain vertical vs horizontal scaling.
+
Vertical scaling adds resources to a single machine; horizontal
scaling adds more machines.
Façade pattern?
+
Façade pattern provides a simplified interface to a complex
subsystem.
Fault tolerance?
+
Fault-tolerant systems continue functioning correctly even when
components fail, minimizing downtime and data loss.
Hexagonal architecture?
+
Hexagonal architecture (Ports & Adapters) isolates core logic
from external systems through adapters.
High availability?
+
High availability ensures a system remains operational and
accessible despite failures, often using redundancy and failover.
Kafka?
+
Kafka is a distributed streaming platform for building
real-time data pipelines and applications.
Layered architecture?
+
Layers (Presentation, Business, Data) separate concerns, making
systems easier to develop, maintain, and test.
Maintainability in architecture?
+
Maintainability is ease of making changes, fixing bugs, or
adding features without affecting other parts of the system.
Microkernel architecture?
+
Microkernel architecture provides a minimal core system with
plug-in modules for extended functionality.
Microservices anti-pattern?
+
Microservices anti-patterns include tight coupling shared
databases and improper service boundaries.
Monolith vs microservices?
+
Monolith is a single deployable application; microservices
break functionality into independently deployable services.
Monolithic architecture?
+
Monolithic architecture is a single unified application where
all components are tightly coupled.
Non-functional requirements (nfrs)?
+
NFRs define system qualities like performance, scalability,
reliability, and security rather than features.
Performance optimization?
+
Designing systems for low latency, efficient resource usage,
and fast response times under load.
Proxy pattern?
+
Proxy pattern provides a placeholder or surrogate to control
access to another object.
Proxy server?
+
A proxy server acts as an intermediary between a client and
server for requests caching and security.
Rabbitmq?
+
RabbitMQ is a message broker that uses queues to enable
asynchronous communication between services.
Reference architecture?
+
A reference architecture is a standardized template or
blueprint for building systems within a domain, promoting best practices.
Rest vs soap?
+
REST is lightweight uses HTTP and stateless; SOAP is
protocol-based heavier and supports strict contracts.
Restful architecture?
+
RESTful architecture uses stateless HTTP requests to manipulate
resources following REST principles.
Restful service?
+
A RESTful service follows REST principles using standard HTTP
methods for communication.
Role of architecture documentation?
+
Communicates system structure, decisions, and rationale to
stakeholders, enabling clarity and informed decision-making.
Role of architecture in devops?
+
Ensures system design supports CI/CD pipelines, automated
testing, monitoring, and fast deployment cycles.
Scalability in architecture?
+
Scalability is a system’s ability to handle growing workloads
by adding resources vertically or horizontally.
Service-oriented architecture (soa)?
+
SOA organizes software as interoperable services with standard
communication protocols, promoting reuse across systems.
Sharding vs partitioning?
+
Sharding splits data horizontally across databases;
partitioning divides tables within a database for management and performance.
Software architecture?
+
Software architecture defines the high-level structure of a
system, its components, and their interactions. It ensures scalability,
maintainability, and alignment with business goals.
Solution architecture vs enterprise architecture?
+
Solution architecture focuses on a specific project or system;
enterprise architecture aligns all IT systems with business strategy.
Token-based authentication?
+
Token-based authentication uses tokens to authenticate users
without storing session state on the server.
Trade-off in architecture?
+
Balancing conflicting requirements like performance vs cost or
flexibility vs simplicity to make informed design decisions.
Architecture Documentation & Diagrams
+
Architecture documentation important?
+
Provides clarity, supports communication with stakeholders,
enables consistency, reduces technical debt, and assists onboarding new developers.
Architecture documentation?
+
It is a set of artifacts describing software systems’
structure, components, interactions, and design decisions. Helps teams understand,
maintain, and scale the system.
Architecture review?
+
A structured assessment of architecture artifacts to ensure
design meets requirements, quality standards, and scalability needs.
Component diagram?
+
A component diagram shows modular parts of a system and their
dependencies. Useful to illustrate service boundaries in Microservices or layered
architecture.
Deployment diagram?
+
Shows how software artifacts are deployed on physical nodes or
infrastructure. Important for cloud or on-premise planning.
Diffbet erd and uml?
+
ERD focuses on database entities and relationships, UML covers
broader software architecture including behavior, structure, and interactions.
Diffbet logical, physical, and deployment diagrams?
+
Logical diagrams show functional components and relationships,
physical diagrams show actual hardware or servers, deployment diagrams show how
software is distributed across nodes.
Authorisation Cloud Security
+
Redirect uris be exact?
+
To prevent open redirect vulnerabilities.
Aaud' claim?
+
Audience — the application that token is meant for.
Access token lifetime?
+
Default 60–90 minutes depending on policies.
Access token manager?
+
Component controlling token storage/expiry.
Acr'?
+
Authentication Context Class Reference — indicates
authentication strength.
Acs url?
+
Endpoint where SP receives SAML responses.
Active-active vs active-passive ha?
+
Active-Active: all nodes serve traffic simultaneously.,
Active-Passive: one node is primary, another is standby for failover.
Adaptive authentication?
+
Dynamic authentication based on risk.
Adaptive sso?
+
Applies dynamic authentication conditions.
Address' scope?
+
Access to user address attributes.
Adfs application group?
+
Collection of OAuth/OIDC clients.
Adfs farm?
+
Cluster of servers providing redundancy.
Adfs federation metadata?
+
XML describing ADFS endpoints and certificates.
Adfs proxy?
+
Enables external access to internal ADFS.
Adfs web application proxy?
+
Proxy enabling external access to ADFS.
Adfs?
+
Active Directory Federation Services: on-prem identity
provider.
Enable MFA for all users use strong methods like TOTP or
hardware tokens.
Cloud native ha design?
+
Using redundancy, distributed systems, microservices, and
auto-scaling to achieve high availability.
Cloud native security?
+
Security designed specifically for cloud services and
microservices, including containers, Kubernetes, and serverless workloads.
Cloud network monitoring?
+
Network monitoring observes traffic flows detects anomalies and
enforces segmentation.
Cloud network segmentation?
+
Network segmentation isolates cloud workloads to reduce attack
surfaces.
Cloud patch management?
+
Automated application of security patches to OS, software, and
applications running in the cloud.
Cloud penetration testing policy?
+
Policy defines rules and approvals required before conducting
penetration tests on cloud services.
Cloud penetration testing tools?
+
Tools include Kali Linux Metasploit Nmap Burp Suite and cloud
provider-native tools.
Cloud penetration testing?
+
Ethical testing to identify vulnerabilities and
misconfigurations in cloud infrastructure.
Cloud role-based access control (rbac)?
+
RBAC assigns permissions based on user roles to enforce least
privilege.
Cloud secrets management?
+
Secrets management stores and controls access to sensitive
information like API keys and passwords.
Cloud secure devops?
+
Secure DevOps integrates security into DevOps processes and
CI/CD pipelines.
Cloud secure gateway?
+
Secure gateway controls and monitors access between users and
cloud applications.
Cloud security assessment?
+
Assessment evaluates cloud infrastructure configurations and
practices against security standards.
Cloud security auditing?
+
Auditing evaluates cloud resources and policies to ensure
security and compliance.
Cloud security automation tools?
+
Tools include AWS Config Azure Security Center GCP Security
Command Center and Terraform with security checks.
Cloud security automation?
+
Automates security checks, patching, and policy enforcement to
reduce human error and improve speed.
Cloud security baseline?
+
Security baseline defines standard configurations and controls
for cloud environments.
Cloud security group best practices?
+
Use least privilege separate environments restrict
inbound/outbound rules and monitor traffic.
Cloud security incident types?
+
Types include data breach misconfiguration account compromise
malware infection and insider threats.
Cloud security monitoring tools?
+
Tools include AWS GuardDuty Azure Defender GCP Security Command
Center and third-party SIEM.
Cloud security orchestration?
+
Security orchestration automates workflows threat response and
remediation across cloud systems.
Cloud security policy?
+
Policy defines rules standards and practices to protect cloud
resources.
Cloud security posture management (cspm)?
+
CSPM tools continuously monitor misconfigurations,
vulnerabilities, and compliance risks in cloud environments.
Cloud security?
+
Cloud security involves policies, controls, procedures, and
technologies that protect data, applications, and services in the cloud. It ensures
confidentiality, integrity, and availability (CIA) of cloud resources.
Cloud siem?
+
Cloud SIEM centralizes log collection analysis alerting and
reporting for security events.
Cloud threat detection?
+
Threat detection identifies malicious activity or anomalies in
cloud environments.
Cloud threat intelligence?
+
Threat intelligence provides data on current security threats
and vulnerabilities to enhance cloud defenses.
Cloud threat modeling?
+
Identifying potential threats, vulnerabilities, and mitigation
strategies for cloud architectures.
Cloud vpn?
+
Cloud VPN securely connects on-premises networks to cloud
resources over encrypted tunnels.
Cloud vulnerability assessment?
+
It identifies security weaknesses in cloud infrastructure
applications and configurations.
Cloud vulnerability management?
+
Vulnerability management identifies prioritizes and remediates
security weaknesses.
Cloud vulnerability scanning?
+
Scanning detects security flaws in cloud infrastructure
applications and containers.
Cloud workload isolation?
+
Workload isolation separates applications or tenants to prevent
lateral movement of threats.
Cloud workload protection platform (cwpp)?
+
CWPP provides security for workloads running across cloud VMs
containers and serverless environments.
Cloud-native security?
+
Cloud-native security integrates security controls directly
into cloud applications and infrastructure.
Common saml attributes?
+
email, firstName, lastName, employeeID.
Compliance monitoring in cloud?
+
Continuous auditing to ensure resources follow regulatory and
internal security standards.
Confidential client?
+
Client that securely stores secrets (backend server).
Configuration management in cloud security?
+
Configuration management ensures cloud resources are deployed
securely and consistently.
Consent screen?
+
UI shown to user listing requested permissions.
Container security?
+
Securing containerized applications using image scanning,
runtime protection, and least privilege.
Continuous compliance?
+
Automated monitoring of cloud resources to maintain compliance
with regulations like HIPAA or GDPR.
Cookies relate to sso?
+
SSO often uses session cookies to maintain authenticated
sessions across multiple apps or domains.
Used to protect against CSRF attacks during authentication.
Custom scopes?
+
App-defined permissions for additional claims.
Data loss prevention (dlp)?
+
DLP prevents unauthorized access sharing or leakage of
sensitive cloud data.
Data masking?
+
Hides sensitive data in non-production environments to protect
privacy while allowing application testing.
Ddos protection in cloud?
+
Defends cloud services against Distributed Denial of Service
attacks using mitigation, traffic filtering, and scaling.
Decentralized identity?
+
User-controlled identity using blockchain-based models.
Delegation?
+
Acting on behalf of a user with limited privileges.
Destination mismatch'?
+
Assertion sent to wrong ACS URL.
Device code flow?
+
Authentication for devices without browsers.
Diffbet access token and refresh token?
+
Access tokens are short-lived tokens for resource access.
Refresh tokens are long-lived and used to obtain new access tokens without
re-authentication.
Diffbet app registration and enterprise application?
A Region is a geographical location. An Availability Zone (AZ)
is an isolated data center within a region providing HA.
Diffbet dr and ha?
+
HA focuses on real-time availability and minimal downtime. DR
is about recovering after a major failure or disaster, which may involve longer
restoration times.
Diffbet icontentservice and ipublishedcontent?
+
IContentService is used for editing/staging content.
IPublishedContent is for reading published content efficiently.
Diffbet id_token and access_token?
+
ID token is for authentication; access token is for
authorization.
Diffbet oauth 1.0 and 2.0?
+
OAuth 1.0 requires cryptographic signing; OAuth 2.0 uses bearer
tokens, simpler flow, and supports multiple grant types like Authorization Code and
Client Credentials.
Diffbet oauth and openid connect?
+
OAuth is for authorization; OIDC is an authentication layer on
top of OAuth providing user identity.
Diffbet oauth scopes and claims?
+
Scopes define the permissions requested; claims define
attributes about the user or session.
Diffbet par and jar?
+
PAR = push request; JAR = sign request.
Diffbet published content and draft content?
+
Draft content is editable but not visible to the public;
published content is live on the website.
Diffbet saml and jwt?
+
SAML = XML assertions; JWT = JSON tokens.
Diffbet saml and oauth?
+
SAML is for SSO using XML; OAuth is authorization using
JSON/REST.
Diffbet saml and oidc?
+
SAML uses XML and is enterprise-focused; OIDC uses JSON and
supports modern apps.
Diffbet sso and mfa?
+
SSO = one login across apps; MFA = additional security factors
during login.
Diffbet sso and oauth?
+
SSO is mainly for authentication across apps. OAuth is for
delegated authorization without sharing credentials.
Diffbet sso and password sync?
+
SSO shares authentication state; password sync copies passwords
across systems.
Diffbet sso and slo?
+
SSO = login across apps; SLO = logout across apps.
Diffbet stateless and stateful authentication?
+
JWT enables stateless authentication—server does not store
session info. Traditional sessions are stateful, stored on the server.
Diffbet symmetric and asymmetric encryption?
+
Symmetric uses same key for encryption and decryption.
Asymmetric uses public/private key pairs. Asymmetric is used in secure key exchange.
Diffbet umbraco api controllers and mvc controllers?
+
API controllers return JSON or XML data for apps; MVC
controllers render views/templates.
Discovery document?
+
Well-known configuration endpoint for OIDC.
Discovery important?
+
Allows dynamic configuration of OIDC clients.
Distributed denial-of-service (ddos) protection?
+
DDoS protection mitigates attacks that overwhelm cloud services
with traffic.
Do access tokens depend on scopes?
+
Yes, scopes define API permissions.
Do all protocols support slo?
+
Yes, but implementations vary.
Do all sps support sso?
+
Not always — legacy apps may need custom connectors.
Do browsers impact sso?
+
Yes, privacy modes may block redirects/cookies.
Do not log tokens?
+
Never log access or refresh tokens.
Does adfs support mfa?
+
Yes, with built-in and external providers.
Does adfs support oauth2?
+
Yes, since ADFS 3.0.
Does adfs support saml sso?
+
Yes, as IdP and SP.
Does azure ad support saml?
+
Yes, SAML 2.0 with IdP-initiated and SP-initiated flows.
Does id token depend on scopes?
+
Yes, claims in ID Token depend on scopes.
Does jwt work?
+
Server generates JWT after authentication. Client stores it
(usually in local storage). Subsequent requests include the token in the
Authorization header for stateless authentication.
Does oidc support single logout?
+
Yes, through RP-Initiated and Front/Back-channel logout.
Does oidc support sso?
+
Yes, OIDC provides Single Sign-On functionality.
Does okta expose jwks?
+
/oauth2/v1/keys endpoint.
Does okta support password sync?
+
Yes, via provisioning connectors.
Does pingfederate issue jwt tokens?
+
Yes, for access and id tokens.
Does pingfederate support mfa?
+
Yes, via PingID or third-party integrations.
Does pingfederate support pkce?
+
Yes, for public clients.
Does pingfederate support saml sso?
+
Yes, both IdP and SP roles.
Does saml ensure security?
+
Uses XML signatures, encryption, certificates, and timestamps.
A centralized identity provider authenticates the user, issues
a token or cookie, and applications trust this token to grant access.
Domain federation?
+
Configures ADFS or external IdP to authenticate domain users.
Dpop?
+
Demonstration of Proof-of-Possession; prevents token theft
misuse.
Dynamic client registration?
+
Allows clients to auto-register at IdP.
Dynamic group?
+
Group with rule-based membership.
Email' scope?
+
Access to user email and email_verified.
Encode saml messages?
+
To ensure safe transport via URLs or POST.
Encrypt sensitive attributes?
+
Highly recommended.
Encryption at rest?
+
Encryption at rest protects stored data using cryptographic
techniques.
Encryption errors occur?
+
Incorrect certificate or key mismatch.
Encryption in cloud?
+
Encryption protects data in transit and at rest using
algorithms like AES or RSA. It prevents unauthorized access to sensitive cloud data.
Encryption in transit?
+
Encryption in transit protects data as it travels over networks
between cloud services or users.
End_session endpoint?
+
Used for OIDC logout operations.
Endpoint security in cloud?
+
Protects client devices, VMs, and containers from malware,
unauthorized access, and vulnerabilities.
Enforce mfa?
+
Improves security for sensitive resources.
Enterprise application?
+
Represents an SP configuration used for SSO.
Enterprise sso?
+
SSO for employees using enterprise IdPs.
Entity category?
+
Classification of SP/IdP capabilities.
Entity id?
+
A unique identifier for SP or IdP in SAML.
Example of federation hub?
+
Azure AD, ADFS, Okta, PingFederate.
Exp' claim?
+
Expiration timestamp.
Expired assertion'?
+
Assertion outside NotOnOrAfter time.
Explain auto scaling.
+
Auto Scaling automatically adjusts compute resources based on
demand, improving availability and cost efficiency.
Explain bastion host.
+
A Bastion host is a secure jump server used to access instances
in private networks.
Explain cloud firewall.
+
Cloud firewalls filter network traffic at the edge or VM level,
enforcing security rules to prevent unauthorized access.
Explain disaster recovery in cloud.
+
Disaster Recovery (DR) is a set of processes to restore cloud
applications and data after failures. It involves backups, replication, multi-region
deployment, and failover strategies.
Failover in cloud?
+
Automatic switching to a redundant system when a primary system
fails, ensuring service continuity.
Fapi?
+
Financial grade API security profile for OIDC/OAuth2.
Fault tolerance in cloud?
+
Fault tolerance ensures the system continues functioning
despite component failures using redundancy and failover.
Federated identity?
+
Using external identity providers like Google or Azure AD.
Defines how the client collects and exchanges access tokens.
Graph api?
+
API to manage users, groups, and apps.
Happens if idp is down during slo?
+
SPs may not logout properly.
Haproxy in cloud?
+
HAProxy is a load balancer and proxy server that supports high
availability and failover.
High availability (ha) in cloud?
+
HA ensures that cloud services remain accessible with minimal
downtime. It uses redundancy, failover mechanisms, and load balancing to maintain
continuous operations.
Home realm discovery?
+
Choosing correct IdP based on the user.
Http artifact binding?
+
Message reference is sent, not entire assertion.
Http post binding?
+
SAML message sent through an HTML form post.
Http redirect binding?
+
SAML message is sent via URL query string.
Https requirement?
+
OAuth 2.0 must use HTTPS for all communication.
Hybrid cloud security?
+
Hybrid cloud security protects workloads and data across
on-premises and cloud environments.
Iat' claim?
+
Issued-at timestamp.
Id token signature?
+
Verifies integrity and authenticity.
Id_token?
+
OIDC token containing user identity claims.
Id_token_hint?
+
Hint for logout identifying user's ID Token.
Identifier (entity id)?
+
SP unique identifier configured in Azure AD.
Identity brokering?
+
IdP sits between user and multiple IdPs.
Identity federation?
+
A trust relationship allowing different systems to share
authentication.
Identity hub?
+
A centralized identity broker connecting many IdPs.
Identity protection?
+
Detects risky logins and risky users.
Identity token validation?
+
Ensuring token signature, audience, and issuer are correct.
Idp discovery?
+
Selecting the correct identity provider for login.
Idp federation?
+
One IdP authenticates users for many SPs.
Idp in sso?
+
Identity Provider — authenticates the user.
Idp metadata url?
+
URL where SP fetches IdP metadata.
Idp proxying?
+
IdP acting as intermediary between user and another IdP.
Idp?
+
System that authenticates users and issues tokens/assertions.
Idp-initiated sso?
+
User starts login at the Identity Provider.
Impersonation?
+
User acting as another identity — dangerous and restricted.
Implicit flow deprecated?
+
Less secure, exposes tokens in browser URL.
Implicit flow?
+
Old flow that returns tokens via browser fragments.
Implicit grant flow?
+
OAuth 2.0 flow for client-side apps where tokens are returned
directly without client secret.
Implicit vs code flow?
+
Code Flow more secure; Implicit deprecated.
Incremental consent?
+
Requesting only partial permissions at first.
Inresponseto attribute?
+
Links the response to the matching AuthnRequest.
Inresponseto missing'?
+
IdP did not include request ID; insecure for SP-initiated.
Introspection endpoint?
+
Used to validate opaque access tokens.
Intrusion detection and prevention (ids/ips)?
+
IDS/IPS monitors network traffic for malicious activity,
raising alerts or blocking threats.
Intrusion detection system (ids)?
+
IDS monitors cloud traffic for malicious activity or policy
violations.
Intrusion prevention system (ips)?
+
IPS not only detects but also blocks malicious traffic in real
time.
Invalid signature' error?
+
Assertion signature mismatch or wrong certificate.
Is jwt used in microservices?
+
JWT allows secure stateless communication between
microservices, with each service verifying the token without a central session
store.
Is jwt verified?
+
Server uses the secret or public key to verify the token’s
signature and validity, ensuring it was issued by a trusted source.
Is more reliable — front or back channel?
+
Back-channel, because it avoids browser issues.
Is oauth 2.0 for authentication?
+
Not by design; it's for authorization. OIDC adds
authentication.
Is oauth 2.0 stateful or stateless?
+
Can be either, depending on token type and architecture.
Is oidc authentication or authorization?
+
OIDC is authentication; OAuth2 is authorization.
Is oidc stateless or stateful?
+
Stateless — relies on JWT tokens.
Is oidc suitable for mobile apps?
+
Yes, highly optimized for mobile clients.
Is saml used for authentication or authorization?
+
Primarily authentication; asserts user identity to SP.
Is sso a single point of failure?
+
Yes, if IdP is down, login for all apps fails.
Is sso for authentication or authorization?
+
SSO is primarily for authentication.
Is sso latency-prone?
+
Yes, due to redirects and token validation.
Is token expiry handled in oauth?
+
Access tokens have a short TTL; refresh tokens are used to
request a new access token without user interaction.
Iss' claim?
+
Issuer identifier.
Issuer claim?
+
Identifies authorization server that issued the token.
Issuer mismatch'?
+
Incorrect IdP entity ID used.
Jar (jwt authorization request)?
+
Authorization request packaged as signed JWT.
Jarm?
+
JWT-secured Authorization Response Mode — adds signing to auth
responses.
Just-in-time provisioning?
+
User is created automatically during login.
Jwks uri?
+
Endpoint serving public keys for validating tokens.
Jwks?
+
JSON Web Key Set for validating tokens.
Jwt header?
+
Header specifies the signing algorithm (e.g., HS256) and token
type (JWT).
Jwt kid field?
+
Key ID to identify which signing key to use.
Jwt payload?
+
The payload contains claims, which are statements about the
user or session (e.g., user ID, roles, expiration).
Jwt token?
+
Self-contained token with claims.
Kerberos?
+
Network authentication protocol used in Windows SSO.
Key components of cloud security?
+
Key components include identity and access management (IAM)
data protection network security monitoring and compliance.
Key management service (kms)?
+
KMS securely creates, stores, and rotates encryption keys for
cloud resources.
Kubernetes role in ha?
+
Kubernetes provides HA by managing pods across multiple nodes,
self-healing, and load balancing.
Limit attribute sharing?
+
Minimize data to reduce privacy risk.
Limit scopes?
+
Yes, always follow least privilege.
Load balancer?
+
A load balancer distributes incoming traffic across multiple
servers to ensure high availability and performance.
Logging & auditing in cloud security?
+
Captures user actions and system events to detect breaches,
analyze incidents, and meet compliance.
Logout method is most reliable?
+
Back-channel logout.
Main cloud security challenges?
+
Challenges include data breaches insecure APIs misconfigured
cloud services insider threats and compliance issues.
Main types of cloud security?
+
Includes Data Security, Network Security, Identity & Access
Management (IAM), Application Security, and Endpoint Security. It protects cloud
workloads from breaches and vulnerabilities.
Metadata important?
+
Ensures both IdP and SP trust each other and understand
endpoints.
Metadata signature?
+
Indicates authenticity of metadata file.
Mfa in oauth?
+
Additional step enforced by authorization server.
Microsegmentation in cloud security?
+
Divides networks into smaller segments to isolate workloads and
minimize lateral attack movement.
Microsoft graph permissions?
+
Scopes that define what an app can access.
Monitor saml logs?
+
Detects anomalies and attacks.
Mtls in oauth?
+
Mutual TLS binding tokens to client certificates.
Multi-cloud security?
+
Multi-cloud security manages security consistently across
multiple cloud providers.
Multi-factor authentication (mfa)?
+
MFA requires two or more verification methods to access cloud
resources, enhancing security beyond passwords.
Multi-federation?
+
Multiple IdPs serving different user groups.
Multi-tenant app?
+
App serving multiple organizations with separate identities.
Multi-tenant identity?
+
Multiple tenants share identity infrastructure.
Nameid formats?
+
EmailAddress, Persistent, Transient, Unspecified.
Nameid?
+
Unique identifier for the user in SAML.
Nameidmapping?
+
Mapping NameIDs between IdP and SP.
Network acl?
+
A Network Access Control List controls traffic at the subnet
level. It provides an additional layer beyond security groups.
Nonce' claim?
+
Used to prevent replay attacks.
Nonce?
+
Unique value used in ID token to prevent replay.
Not to store tokens?
+
LocalStorage or unencrypted browser memory.
Notbefore claim?
+
Defines earliest time the assertion is valid.
Notonorafter claim?
+
Expiration time of assertion.
Oauth 2
+
OAuth 2 is an open authorization framework enabling secure
access delegation without sharing passwords.
A simplification removing implicit and ROPC flows; PKCE
required.
Oauth backchannel logout?
+
Mechanism to notify apps of user logout.
Oauth device flow?
+
Auth flow for devices without browsers.
Oauth grant types?
+
Common grant types: Authorization Code, Implicit, Password
Credentials, Client Credentials. They define how clients obtain access tokens.
Oauth introspection endpoint?
+
API to check token validity for opaque tokens.
Oauth revocation endpoint?
+
API to revoke access or refresh tokens.
Oauth?
+
OAuth is an open-standard authorization protocol that allows
third-party apps to access user resources without sharing credentials. It issues
access tokens to grant limited access to resources.
Oauth2 used for?
+
Authorization, not authentication.
Oauth2 with sso integration?
+
OAuth2 with SSO enables a single login using OAuth’s
token-based authorization to access multiple protected services.
Oidc claims?
+
Statements about a user (e.g., email, name).
Oidc created?
+
To enable secure user authentication using modern JSON/REST
technology.
Oidc discovery document?
+
Well-known configuration containing endpoints and metadata.
Oidc federation?
+
Uses OIDC for federated identity.
Oidc flow is best for spas?
+
Auth Code Flow with PKCE.
Oidc in apple sign-in?
+
Apple Sign-In is based on OIDC standards.
Oidc in auth0?
+
Auth0 fully supports OIDC flows and JWT issuance.
Oidc in aws cognito?
+
Cognito provides OIDC-based hosted UI flows.
Oidc in azure ad?
+
Azure AD supports OIDC with Microsoft Identity platform.
Oidc in fusionauth?
+
FusionAuth supports OIDC, MFA, and OAuth2 flows.
Oidc in google identity?
+
Google uses OIDC for all user authentication.
Oidc in keycloak?
+
Keycloak is an open-source IdP supporting OIDC.
Oidc in okta?
+
Okta provides custom and default OIDC authorization servers.
Oidc in pingfederate?
+
PingFederate supports OIDC with OAuth AS extensions.
Oidc in salesforce?
+
Salesforce acts as an OIDC provider for SSO.
Oidc in sso?
+
OAuth2-based identity layer issuing ID tokens.
Oidc preferred over saml?
+
Lightweight JSON tokens, mobile-ready, modern architecture.
Oidc scopes?
+
Permissions for claims in ID Token/UserInfo.
Oidc vs api keys?
+
OIDC is secure and user-based; API keys are static secrets.
Oidc vs basic auth?
+
OIDC uses token-based modern auth; Basic Auth sends credentials
each time.
Oidc vs jwt?
+
OIDC uses JWT; JWT is a token format, not a protocol.
Identity and access management provider for cloud applications.
Opaque token?
+
Token that requires introspection to validate.
Openid' scope?
+
Mandatory scope to enable OIDC.
Par (pushed authorization request)?
+
Client sends authorization details via a secure POST before
redirect.
Par (pushed authorization requests)?
+
Securely sends auth request to IdP before redirect — prevents
tampering.
Partial logout?
+
Only some apps logout.
Password credentials grant
+
User provides username/password directly to client; now
discouraged due to security risks.
Password vaulting sso?
+
SSO by storing and auto-filling credentials.
Passwordless sso?
+
SSO without passwords using FIDO2/WebAuthn.
Persistent nameid?
+
Long-lived identifier for a user.
Phone' scope?
+
Access to phone and phone_verified.
Pingdirectory?
+
Directory used with PingFederate for user management.
Pingfederate authentication policy?
+
Controls how authentication decisions are made.
Pingfederate connection?
+
Configuration linking SP and IdP.
Pingfederate console?
+
Admin dashboard for configuration.
Pingfederate idp adapter?
+
Plugin to authenticate users (LDAP, Kerberos etc).
Pingfederate oauth as?
+
Acts as authorization server issuing tokens.
Pingfederate vs adfs?
+
Ping = more flexible; ADFS = Microsoft ecosystem-focused.
Pingfederate?
+
Enterprise federation server for SSO and identity integration.
Pingone?
+
Cloud identity solution integrating with PingFederate.
Pkce extension?
+
Proof Key for Code Exchange — protects public clients.
Pkce introduced?
+
To prevent authorization code interception attacks.
Pkce?
+
Enhances OAuth2 security for public clients.
Policy contract?
+
Defines attributes shared with SP/IdP.
Post_logout_redirect_uri?
+
URL where user is redirected after logout.
Principle of least privilege?
+
Users are granted only the permissions necessary to perform
their job functions.
Privileged identity management?
+
Controls and audits privileged roles.
Profile' scope?
+
Access to basic user attributes.
Prohibited in oidc?
+
Tokens through URL (except legacy implicit flow).
Proof-of-possession?
+
Tokens tied to a key so only holder with key can use them.
Protocol does azure ad support?
+
OIDC, OAuth2, SAML2, WS-Fed.
Protocol format does saml use?
+
XML.
Protocol is best for mobile apps?
+
OIDC and OAuth2.
Protocol is best for web apps?
+
SAML2 for enterprises, OIDC for modern apps.
Protocol uses json/jwt?
+
OIDC.
Protocol uses xml?
+
SAML2.
Protocols does adfs support?
+
SAML, WS-Fed, OAuth2, OIDC.
Protocols does okta support?
+
OIDC, OAuth2, SAML2, SCIM.
Protocols does pingfederate support?
+
OIDC, OAuth2, SAML2, WS-Trust.
Protocols support sso?
+
SAML2, OIDC, OAuth2, WS-Fed, Kerberos.
Public client?
+
Client without a secure place to store secrets (SPA, mobile
app).
Rate limiting in cloud security?
+
Limits the number of requests to APIs or services to prevent
abuse and DDoS attacks.
Recipient attribute?
+
SP endpoint expected to receive the assertion.
Redirect uri?
+
Endpoint where authorization server sends tokens or codes.
Redirect_uri?
+
URL where tokens/codes are sent after login.
Redundancy in ha?
+
Duplication of critical components to avoid single points of
failure, e.g., multiple servers, networks, or databases.
Refresh token flow?
+
Used to obtain new access tokens silently.
Refresh token grace period?
+
Allows old token to work briefly during rotation.
Refresh token lifetime?
+
Can be days to months based on policy.
Refresh token rotation?
+
Each refresh returns a new token; old one invalidated.
Refresh tokens long lived?
+
To enable new access tokens without user interaction.
Registration endpoint?
+
Dynamic client registration.
Relationship between oauth2 and oidc?
+
OIDC extends OAuth2 by adding identity features.
Relaystate?
+
Parameter that preserves return URL or context.
Relying party trust?
+
Configuration for apps that rely on ADFS for authentication.
Replay detected'?
+
Assertion already used before.
Reply/acs url?
+
Endpoint where Azure AD posts SAML responses.
Resource owner password grant (ropc)?
+
User sends username/password directly; insecure and deprecated.
Resource server responsibility?
+
Validate tokens and expose APIs.
Response_mode?
+
Defines how tokens are returned (query, form_post, fragment).
Response_type?
+
Defines which tokens are returned (code, id_token, token).
Restrict redirect_uri?
+
Prevents token leakage to malicious URLs.
Risk-based authentication?
+
Adaptive authentication based on context.
Risk-based sso?
+
Challenges based on user risk profile.
Ropc flow?
+
Resource Owner Password Credentials — now discouraged.
Ropc used?
+
Legacy or highly trusted systems; not recommended.
Rotate certificates periodically?
+
Prevents long-term compromises.
Rotate secrets regularly?
+
Client secrets should be rotated periodically.
Rp-initiated logout?
+
Client logs the user out at IdP.
Rpo and rto?
+
RPO (Recovery Point Objective): max data loss allowed, RTO
(Recovery Time Objective): max downtime allowed during recovery
Saml 2.0?
+
A standard for exchanging authentication and authorization data
using XML-based security assertions.
Saml attribute query?
+
SP querying user attributes via SOAP.
Saml authentication flow?
+
SP sends AuthnRequest → IdP authenticates → IdP sends assertion
→ SP validates → user logged in.
Saml binding?
+
Defines how SAML messages are transported over HTTP.
Saml federation?
+
Establishes trust using SAML metadata.
Saml flow is more secure?
+
SP-initiated SSO due to request ID matching.
Saml in sso?
+
XML-based single sign-on protocol used in enterprises.
Saml is not good for mobile?
+
XML processing is heavy and not designed for mobile flows.
Saml logoutrequest?
+
Request to initiate logout across IdP and SP.
Saml metadata?
+
XML document describing IdP and SP configuration.
Saml profile?
+
Defines use cases like Web SSO, SLO, IdP proxying.
Saml response?
+
IdP's message containing user identity.
Saml single logout (slo)?
+
Logout from one system logs the user out of all SAML-connected
systems.
Saml still used?
+
Strong enterprise adoption and compatibility with legacy
systems.
Saml strength?
+
Federated SSO, enterprise security.
Saml weakness?
+
Complexity, XML overhead, slower than OIDC.
Saml?
+
Security Assertion Markup Language (SAML) is an XML-based
standard for exchanging authentication and authorization data between an identity
provider and service provider.
Scim provisioning in okta?
+
Automatic user account creation/deletion in apps.
Scim provisioning?
+
Automatic provisioning of users to cloud apps.
Scim?
+
Automated user provisioning for SSO apps.
Scope restriction?
+
Limit token permissions to least privilege.
Scope?
+
Defines the level of access requested by the client.
Seamless sso?
+
Automatically signs in users on corporate devices.
Security automation with devsecops?
+
Integrating security in CI/CD pipelines to automate scanning,
testing, and policy enforcement during development.
Security group vs network acl?
+
Security group is stateful; network ACL is stateless and
applies at subnet level.
Security group?
+
Security Groups act as virtual firewalls in cloud environments
to control inbound and outbound traffic for VMs and containers.
Security groups in cloud?
+
Security groups act as virtual firewalls controlling inbound
and outbound traffic to cloud resources.
Security information and event management (siem)?
+
SIEM collects and analyzes logs in real-time to detect, alert,
and respond to security threats.
Separate auth and resource servers?
+
Improves security and scales better.
Serverless security?
+
Securing FaaS (Functions as a Service) involves identity
policies, least privilege access, and monitoring event triggers.
Session endpoint?
+
Endpoint for session management.
Session federation?
+
Sharing session state across domains.
Session hijacking?
+
Stealing a valid session to impersonate a user.
Session in sso?
+
Stored authentication state allowing continuous access.
Session token vs id token?
+
Session = internal system token; ID token = external identity
token.
Session_state?
+
Identifier for user session at IdP.
Shared responsibility model in aws?
+
AWS secures the cloud infrastructure; customers secure their
data applications and configurations.
Shared responsibility model in azure?
+
Azure secures physical data centers; customers manage
applications data and identity.
Shared responsibility model in gcp?
+
GCP secures the infrastructure; customers secure workloads data
and user access.
Should assertions be encrypted?
+
Yes, especially for sensitive data.
Should tokens be short-lived?
+
Reduces impact of compromise.
Signature validation?
+
Checks if signed by trusted IdP.
Signature verification fails?
+
Wrong certificate or XML manipulation.
Silent authentication?
+
Refreshes tokens without user interaction.
Single federation?
+
Using one IdP across multiple apps.
Single logout?
+
Logout from one app logs out from all federated apps.
Sla in cloud?
+
Service Level Agreement defines uptime guarantees,
availability, and performance metrics with providers.
Slo is more reliable?
+
Back-channel — avoids browser failures.
Slo may fail?
+
SPs may ignore logout request or session mismatch.
Slo unreliable?
+
Different SP implementations and browser constraints.
Sni support in adfs?
+
Allows multiple SSL certs on same host.
Soap binding?
+
Used for back-channel communication like logout.
Sp adapter?
+
Adapter to authenticate SP requests.
Sp federation?
+
One SP trusts multiple IdPs.
Sp in sso?
+
Service Provider — application consuming the identity.
Sp metadata url?
+
URL where IdP fetches SP metadata.
Sp?
+
Application that uses IdP authentication.
Sp-initiated sso?
+
User starts login at the Service Provider.
Ssl/tls in cloud?
+
SSL/TLS encrypts data in transit, ensuring secure communication
between clients and cloud services.
Sso connector?
+
Pre-integrated SSO configuration for apps.
Sso improves identity governance?
+
Yes, ensures consistent user lifecycle management.
Sso in saml?
+
Single Sign-On enabling users to access multiple apps with one
login.
Sso needed?
+
It improves user experience and security by eliminating
repeated logins.
Sso provider?
+
A platform offering authentication and federation services.
Sso setup complex?
+
Requires certificates, metadata, mappings, and trust
configuration.
Sso url?
+
Identity Provider endpoint that handles authentication
requests.
Sso with adfs?
+
Supports SAML and WS-Fed for on-prem identity.
Sso with azure ad?
+
Uses SAML, OIDC, OAuth, and Conditional Access.
Sso with okta?
+
Supports SAML, OIDC, SCIM, and rich policy controls.
Sso with pingfederate?
+
Enterprise SSO with SAML, OAuth, and adaptive auth.
Sso?
+
Single Sign-On allows a user to log in once and access multiple
systems without logging in again.
State parameter?
+
Protects against CSRF attacks.
Step-up authentication?
+
Requesting stronger authentication mid-session.
Sts?
+
Security Token Service issuing tokens.
Sub' claim?
+
Subject — unique identifier of the user.
Subjectconfirmationdata?
+
Contains conditions like recipient and expiration.
Surface controllers?
+
Surface controllers handle form submissions and page
interactions in MVC views for Umbraco sites.
Tenant in azure ad?
+
A dedicated Azure AD instance for an organization.
Securely inject secrets, certificates, and keys into CI/CD
pipelines without exposing credentials.
Rotate secrets in Key Vault?
+
Use automatic or manual rotation to periodically update
keys/secrets without downtime.
Scale Azure App Service?
+
Scale up (bigger instance) or scale out (more instances).
Autoscale can respond to CPU/memory metrics.
Soft-delete in Key Vault?
+
Allows recovery of deleted secrets/keys for a retention period
(default 90 days).
Azure Repos
+
Pull Requests in Azure Repos?
+
They enable code review and enforce branch policies before
merging code into protected branches.
Azure Repos?
+
Azure Repos is part of Azure DevOps providing Git repositories
and TFVC (Team Foundation Version Control) for collaborative development.
Branch policy in Azure Repos?
+
Policies enforce code quality, mandatory reviews, builds, and
checks before merging into protected branches.
Branching strategy?
+
Defines rules for feature, release, hotfix, and main branches
to ensure clean development workflow (e.g., GitFlow, trunk-based).
Create a repo in Azure Repos?
+
Azure DevOps → Repos → New repository → Git or TFVC →
Initialize with README → Create.
DiffBet Azure Repos and GitHub?
+
Azure Repos integrates tightly with Azure DevOps pipelines and
boards, while GitHub is more widely used for public repos and community
collaboration.
DiffBet Git and TFVC in Azure Repos?
+
Git is distributed VCS; TFVC is centralized. Git supports
branching/merging; TFVC uses workspace checkouts.
DiffBet GitHub, GitLab, Bitbucket, Azure Repos?
+
All host Git repos. GitHub focuses on public collaboration,
GitLab on DevOps lifecycle, Bitbucket integrates with Jira, Azure Repos integrates
with Azure DevOps ecosystem.
Enforce branch policies?
+
Use required reviewers, build validations, and limit who can
merge.
Handle merge conflicts in multi-developer environment?
+
Use feature branches, PRs/MRs, communicate changes, and resolve
conflicts manually when they arise.
Integrate Azure Repos with CI/CD?
+
Connect with Azure Pipelines to automatically build, test, and
deploy on push or PR events.
Integrate Azure Repos with pipelines?
+
Link repo to Azure Pipelines and trigger CI/CD pipelines on
push or PR events.
Manage secrets in CI/CD pipelines?
+
Use GitHub secrets, GitLab CI variables, Bitbucket secured
variables, or Azure Key Vault.
Monitor repository activity?
+
Use webhooks, built-in analytics, CI/CD logs, audit logs, or
integration tools like SonarQube for code quality monitoring.
Rollback a PR in Azure Repos?
+
Revert the merged PR using the revert button or manually revert
commits.
Azure Service Bus
+
Dead-letter queues (DLQ)?
+
Sub-queues to store messages that cannot be delivered or
processed. Helps error handling and retries.
DiffBet Service Bus and Storage Queue?
+
Service Bus supports advanced messaging features (pub/sub,
sessions, DLQ), Storage Queue is simpler and cost-effective.
Duplicate detection?
+
Service Bus can detect and ignore duplicate messages based on
MessageId within a defined time window.
Enable auto-forwarding?
+
Forward messages from one queue/subscription to another
automatically for workflow chaining.
Message lock duration?
+
Time a message is locked for processing. Prevents multiple
consumers from processing simultaneously.
Message session in Service Bus?
+
Used to group related messages for ordered processing by the
same consumer.
Peek-lock?
+
Locks the message while reading but does not delete it until
explicitly completed.
Queue in Service Bus?
+
FIFO message storage where one consumer reads messages at a
time.
Topic and Subscription?
+
Topics allow multiple subscribers to receive copies of a
message. Useful for pub/sub patterns.
Bitbucket
+
Bitbucket api?
+
Bitbucket API allows programmatic access to repositories
pipelines pull requests and other resources.
Bitbucket app password?
+
App password allows authentication for API or Git operations
without using your main password.
Bitbucket artifacts in pipelines?
+
Artifacts are files produced by steps that can be used in later
steps or downloads.
Bitbucket branch model?
+
Branch model defines naming conventions and workflow for
feature release and hotfix branches.
Bitbucket branch permission?
+
Branch permission restricts who can push merge or delete on
specific branches.
Bitbucket build status?
+
Build status shows pipeline or CI/CD success/failure associated
with commits or pull requests.
Bitbucket caches in pipelines?
+
Caches store dependencies between builds to speed up pipeline
execution.
Bitbucket cloud?
+
Bitbucket Cloud is a SaaS version hosted by Atlassian
accessible via web browser without local server setup.
Bitbucket code insights?
+
Code Insights provides annotations reports and automated
feedback in pull requests.
Bitbucket code review?
+
Code review is the process of inspecting code changes before
merging.
Bitbucket code search?
+
Code search allows searching for keywords across repositories
and branches.
Bitbucket commit hook?
+
Commit hook triggers scripts on commit events to enforce rules
or automation.
Bitbucket commit?
+
A commit is a snapshot of changes in the repository with a
unique identifier.
Bitbucket compare feature?
+
Compare shows differences between branches commits or tags.
Bitbucket custom pipeline?
+
Custom pipeline is manually triggered or triggered by specific
branches tags or events.
Bitbucket default branch?
+
Default branch is the primary branch where new changes are
merged usually main or master.
Bitbucket default pipeline?
+
Default pipeline is automatically triggered for all branches
unless overridden.
Bitbucket default reviewers?
+
Default reviewers are automatically added to pull requests for
code review.
Bitbucket deployment environment?
+
Deployment environment represents a target system like
development staging or production.
Bitbucket deployment permissions?
+
Deployment permissions control who can deploy to specific
environments.
Bitbucket deployment tracking?
+
Deployment tracking shows which commit was deployed to which
environment.
Bitbucket emoji reactions?
+
Emoji reactions allow quick feedback on pull request comments.
Bitbucket environment variables?
+
Environment variables store configuration values used in
pipelines.
Bitbucket forking workflow?
+
Forking workflow involves creating a fork making changes and
submitting a pull request to the original repository.
Bitbucket inline discussions?
+
Inline discussions allow commenting on specific lines in pull
requests.
Bitbucket integration with jira?
+
Integration links commits branches and pull requests to Jira
issues for traceability.
Bitbucket issue tracker integration?
+
Integration links repository commits branches or pull requests
to issues for tracking.
Bitbucket issue tracker?
+
Issue tracker helps manage tasks bugs and feature requests
within a repository.
Bitbucket merge check requiring successful build?
+
This ensures pipelines pass before a pull request can be
merged.
Bitbucket merge check?
+
Merge check ensures conditions like passing pipelines approvals
or no conflicts before merging.
Bitbucket merge conflict?
+
Merge conflict occurs when changes in different branches
conflict and cannot be merged automatically.
Bitbucket merge permissions?
+
Merge permissions restrict who can merge pull requests into a
branch.
Bitbucket merge strategy?
+
Merge strategy determines how branches are combined: merge
commit squash or fast-forward.
Bitbucket pipeline caching?
+
Caching stores files like dependencies between builds to
improve speed.
Bitbucket pipeline step?
+
Step defines an individual task in a pipeline such as build
test or deploy.
Bitbucket pipeline trigger?
+
Trigger defines events that start a pipeline like push pull
request or schedule.
Bitbucket pipeline?
+
It’s a CI/CD tool integrated with Bitbucket. It automates
build, test, and deployment processes using a bitbucket-pipelines.yml file.
Bitbucket post-receive hook?
+
Post-receive hook runs after push to notify or trigger
workflows.
Bitbucket pre-receive hook?
+
Pre-receive hook runs on the server before accepting pushed
changes.
Bitbucket pull request approvals?
+
Approvals are confirmations from reviewers before merging pull
requests.
Bitbucket pull request comment?
+
Comment allows discussion or feedback on code changes in pull
requests.
Bitbucket pull request inline comment?
+
Inline comment is attached to a specific line in a file within
a pull request.
Bitbucket pull request merge button?
+
Merge button merges the pull request once all conditions are
met.
Bitbucket pull request merge conflicts?
+
Merge conflicts occur when changes in branches are
incompatible.
Bitbucket pull request merge strategies?
+
Merge strategies: merge commit squash or fast-forward.
Bitbucket pull request tasks?
+
Tasks are action items within pull requests for reviewers or
authors to complete.
Bitbucket release management?
+
Release management tracks versions tags and deployment history.
Cloud repositories can have unlimited forks; limits may apply
in Server based on configuration.
Bitbucket repository hook?
+
Repository hook is a script triggered by repository events like
commits or pull requests.
Bitbucket repository mirroring?
+
Repository mirroring synchronizes changes between two
repositories.
Bitbucket repository permissions inheritance?
+
Permissions can be inherited from project-level to
repository-level for consistent access.
Bitbucket repository size limit?
+
Bitbucket Cloud repository limit is 2 GB for free plan; Server
can be configured based on hardware.
Bitbucket repository watchers vs default reviewers?
+
Watchers receive notifications; default reviewers are added to
pull requests automatically.
Bitbucket repository watchers?
+
Watchers receive notifications about repository activity.
Bitbucket repository?
+
A repository is a storage space on Bitbucket where your
project’s code history and collaboration features are managed.
Bitbucket rest api?
+
REST API allows programmatic access to Bitbucket resources for
automation and integrations.
Bitbucket server (data center)?
+
Bitbucket Server is a self-hosted solution for enterprises to
manage Git repositories internally.
Bitbucket smart mirroring?
+
Smart mirroring improves clone and fetch speed by using
geographically closer mirrors.
Bitbucket snippet permissions?
+
Snippet permissions control who can view or edit code snippets.
Bitbucket snippet?
+
Snippet is a way to share small pieces of code or text with
others independent of repositories.
Bitbucket ssh key?
+
SSH key is used for secure authentication between local machine
and repository.
Bitbucket tag?
+
Tag marks a specific commit in the repository often used for
releases.
Bitbucket tags vs branches?
+
Tags mark specific points; branches are active development
lines.
Bitbucket user groups?
+
User groups allow managing access permissions for multiple
users collectively.
Bitbucket workspace?
+
Workspace is a container for repositories users and projects in
Bitbucket Cloud.
Bitbucket?
+
Bitbucket is a Git-based repository hosting service by
Atlassian. It supports Git and Mercurial, pull requests, branch permissions, and
integrates with Jira and CI/CD pipelines.
Branch in bitbucket?
+
A branch is a parallel version of a repository used to develop
features fix bugs or experiment without affecting the main codebase.
Diffbet bitbucket and github?
+
Bitbucket supports both Git and Mercurial offers free private
repositories and integrates well with Atlassian tools; GitHub focuses on Git and
public repositories with a strong open-source community.
Diffbet bitbucket cloud and server pipelines?
+
Cloud pipelines are hosted in Bitbucket’s environment; Server
pipelines are run on self-hosted infrastructure.
Diffbet bitbucket pull request approval and merge check?
+
Approval indicates reviewers’ consent; merge check enforces
rules before allowing a merge.
Diffbet bitbucket rest api and webhooks?
+
REST API is used for querying and managing resources; webhooks
push event notifications to external systems.
Diffbet branch permissions and user permissions in bitbucket?
+
Branch permissions restrict actions on specific branches; user
permissions control overall repository access.
Diffbet commit and push in bitbucket?
+
Commit saves changes locally; push uploads commits to remote
repository.
Diffbet environment and branch in bitbucket?
+
Branch is a code version; environment is a deployment target.
Diffbet fork and clone in bitbucket?
+
Fork creates a separate remote repository; clone copies a
repository to your local machine.
Diffbet git and bitbucket?
+
Git is a version control system, while Bitbucket is a hosting
service for Git repositories with collaboration features like PRs, pipelines, and
access controls.
Diffbet git and mercurial in bitbucket?
+
Both are distributed version control systems; Git is more
widely used and flexible Mercurial is simpler with easier workflows.
Diffbet git clone and bitbucket clone?
+
Git clone is a Git command for local copies; Bitbucket clone
often refers to cloning repositories hosted on Bitbucket.
Diffbet lightweight and annotated tags in bitbucket?
+
Lightweight tag is just a pointer; annotated tag includes
metadata like author date and message.
Diffbet manual and automatic merging in bitbucket?
+
Manual merging requires user action; automatic merging merges
once all checks and approvals pass.
Diffbet manual and automatic triggers in bitbucket?
+
Manual triggers require user action; automatic triggers run
based on configured events.
Diffbet master and main in bitbucket?
+
Main is the modern default branch name; master is the legacy
default branch name.
Diffbet merge and pull request?
+
Merge is the action of combining code; pull request is the
workflow for review and discussion before merging.
Diffbet merge checks and branch permissions?
+
Merge checks enforce conditions for pull requests; branch
permissions restrict direct actions on branches.
Diffbet mirror and fork in bitbucket?
+
Mirror replicates a repository; fork creates an independent
copy for development.
Diffbet pipeline step and pipeline?
+
Pipeline is a sequence of steps; step is a single unit within
the pipeline.
Diffbet project and repository in bitbucket?
+
Project groups multiple repositories; repository stores the
actual code and history.
Diffbet read
+
write and admin access in Bitbucket? Read allows viewing code
write allows pushing changes admin allows full control including settings and
permissions.
Diffbet rebase and merge in bitbucket?
+
Rebase applies commits on top of base branch for linear
history; merge combines branches preserving commit history.
Diffbet repository and project permissions in bitbucket?
+
Repository permissions control access to a specific repository;
project permissions control access to all repositories under a project.
Fast-forward merge in bitbucket?
+
Fast-forward merge moves the branch pointer forward when there
are no divergent commits.
Fork in bitbucket?
+
A fork is a copy of a repository in your account to make
changes independently before submitting a pull request.
Merge in bitbucket?
+
Merge combines changes from one branch into another typically
after code review.
Pull request in bitbucket?
+
Pull request is a mechanism to propose code changes from one
branch to another with review and approval workflow.
Pull requests in bitbucket?
+
A pull request (PR) lets developers propose code changes for
review before merging into main branches. It ensures code quality and collaboration.
Squash merge in bitbucket?
+
Squash merge combines multiple commits into a single commit
before merging into the target branch.
To create a repository in bitbucket?
+
Login → Click Create repository → Provide name, description,
access type → Initialize with README (optional) → Create.
To resolve merge conflicts in bitbucket cloud?
+
Fetch the branch resolve conflicts locally commit and push to
the pull request branch.
Webhook in bitbucket?
+
Webhook allows Bitbucket to send event notifications to
external systems or services automatically.
Yaml in bitbucket pipelines?
+
YAML file defines pipeline configuration including steps
triggers and deployment environments.
You resolve merge conflicts in bitbucket?
+
Resolve conflicts locally in Git commit the changes and push to
the branch.
C#
+
Is C# managed or unmanaged?
+
C# is managed code because it runs under CLR.
Managed code?
+
Code executed under CLR with garbage collection and memory
management.
Unmanaged code?
+
Code that runs directly on OS without CLR support.
Console application?
+
An application that runs in a command-line interface.
Base class for all classes?
+
System.Object is the root base class.
Object-Oriented Programming (OOP)?
+
OOP is a programming paradigm based on objects containing data
and behavior.
Encapsulation achieved in C#?
+
Using access modifiers like private, protected, internal, and
public.
Does C# support multiple inheritance?
+
No, C# supports single inheritance with multiple interfaces.
Types of polymorphism in C#?
+
Compile-time and runtime polymorphism.
Abstraction achieved in C#?
+
Using abstract classes and interfaces.
Can an interface have implementation in C#?
+
Yes, default interface methods are allowed from C# 8.0.
Data types in C#?
+
Data types define the kind of data a variable can hold.
Main categories of data types?
+
Value types and Reference types.
Value types?
+
Types that store data directly in memory.
Reference types?
+
Types that store references to data in memory.
Examples of value types?
+
int, float, double, bool, struct, enum.
Examples of reference types?
+
class, interface, array, string, object.
Variable?
+
A named storage location that holds data.
Variable declaration?
+
Specifying data type and name of a variable.
Variable initialization?
+
Assigning an initial value to a variable.
Implicit typing?
+
Using var keyword to infer variable type.
Explicit typing?
+
Declaring variable with a specific data type.
Stack memory?
+
Memory used for storing value types and method calls.
Heap memory?
+
Memory used for storing reference types.
Managed heap?
+
Heap memory managed by the CLR.
Causes garbage collection?
+
Low memory conditions or explicit GC calls.
Are memory leaks avoided?
+
Proper disposal and avoiding unnecessary references.
Control statements in C#?
+
Statements that control the flow of program execution.
Decision-making statements?
+
if, if-else, else-if, and switch.
If statement?
+
Executes code when a condition is true.
If-else statement?
+
Executes one block when true and another when false.
Loop with initialization, condition, and iteration.
While loop?
+
Executes while a condition remains true.
Do-while loop?
+
Executes at least once before checking condition.
Foreach loop?
+
Iterates through collections sequentially.
Is foreach preferred?
+
iterating over collections safely.
Break statement?
+
Exits a loop or switch.
Continue statement?
+
Skips current iteration and continues loop.
Goto statement?
+
Transfers control to a labeled statement.
Goto discouraged?
+
It reduces code readability and maintainability.
Nested loop?
+
A loop inside another loop.
Infinite loop?
+
A loop that never terminates unless broken.
Array in C#?
+
An array is a fixed-size collection of elements of the same
type.
Are arrays declared in C#?
+
Using dataType[] arrayName syntax.
Array initialization?
+
Assigning values to an array at creation.
Multidimensional array?
+
An array with more than one dimension.
Jagged array?
+
An array of arrays with different lengths.
String in C#?
+
An immutable sequence of Unicode characters.
Strings immutable?
+
To improve performance and security.
StringBuilder?
+
A mutable string class for efficient string modifications.
StringBuilder be used?
+
When frequent string modifications are required.
Collections in C#?
+
Classes used to store, manage, and manipulate groups of
objects.
ArrayList not recommended?
+
It lacks type safety and causes boxing/unboxing.
List
+
?
Dictionary
+
?
Stack
+
?
Queue
+
?
Generic collection advantage?
+
Type safety, performance, and reusability.
Exception in C#?
+
An exception is a runtime error that disrupts normal program
execution.
Exception handling?
+
A mechanism to handle runtime errors gracefully.
Keyword is used to handle exceptions?
+
try, catch, finally, and throw.
Try block?
+
Contains code that may cause an exception.
Catch block?
+
Handles exceptions thrown in try block.
Finally block?
+
Executes code regardless of exception occurrence.
Can multiple catch blocks be used?
+
Yes, to handle different exception types.
Throw keyword?
+
Used to explicitly throw an exception.
Rethrowing an exception?
+
Throwing the same exception again after catching it.
Base class of all exceptions?
+
System.Exception.
Checked vs unchecked exception in C#?
+
C# supports only unchecked exceptions.
Create custom exceptions?
+
To represent application-specific error conditions.
Inner exception?
+
An exception that caused another exception.
Debugging?
+
The process of finding and fixing errors.
Breakpoint?
+
A marker that pauses execution during debugging.
Step over in debugging?
+
Executes current line without entering method.
Step into in debugging?
+
Steps inside the called method.
Step out in debugging?
+
Completes current method and returns control.
Delegate in C#?
+
A delegate is a type-safe reference to a method.
Delegates used?
+
To pass methods as parameters and enable callback mechanisms.
Are delegates invoked?
+
By calling the delegate instance like a method.
Func delegate?
+
A generic delegate that returns a value.
Action delegate?
+
A generic delegate that does not return a value.
Predicate delegate?
+
A delegate that returns a boolean value.
Event in C#?
+
A mechanism for notifying subscribers when something happens.
Event publisher?
+
A class that raises an event.
Event subscriber?
+
A class that listens and reacts to an event.
Keyword is used to declare an event?
+
The event keyword.
EventHandler delegate?
+
A predefined delegate for handling events.
Event encapsulation?
+
Restricting direct access to delegate invocation.
Lambda syntax?
+
(parameters) => expression or statement block.
Lambda expressions used?
+
To simplify delegate and LINQ expressions.
Expression-bodied member?
+
A concise syntax using lambda expressions.
Closure in lambda?
+
Capturing external variables inside a lambda.
Difference between lambda and anonymous method?
+
Lambda expressions are more concise and expressive.
Multithreading in C#?
+
Multithreading allows multiple threads to execute concurrently.
Namespace provides threading support?
+
System.Threading.
Asynchronous programming?
+
Executing tasks without blocking the main thread.
Problem does async programming solve?
+
Improves responsiveness and scalability.
Async keyword?
+
Marks a method as asynchronous.
Await keyword?
+
Pauses execution until an awaited task completes.
Await return?
+
The result of the completed task.
Can async methods return void?
+
Yes, but only for event handlers.
Valid async return types?
+
Task, Task, and void.
Task.Run()?
+
Runs code on a background thread.
Synchronization context?
+
Controls where async continuations execute.
Are deadlocks avoided?
+
Using async/await properly and avoiding blocking calls.
Parallel programming?
+
Executing multiple tasks simultaneously.
Parallel.For?
+
Executes loop iterations in parallel.
Are race conditions prevented?
+
Using locks, mutexes, or thread-safe collections.
File handling in C#?
+
File handling allows reading from and writing to files.
Namespace supports file handling?
+
System.IO.
File class?
+
A static class providing methods to create, read, write, and
delete files.
FileStream?
+
A stream used for reading and writing files at byte level.
StreamReader?
+
A class used to read text from a stream.
StreamWriter?
+
A class used to write text to a stream.
BinaryReader?
+
A class used to read binary data from a stream.
BinaryWriter?
+
A class used to write binary data to a stream.
Directory handling?
+
Managing folders using Directory and DirectoryInfo classes.
Binary serialization?
+
Serializing objects into binary format.
XML serialization?
+
Serializing objects into XML format.
Library is used for JSON serialization?
+
System.Text.Json or Newtonsoft.Json.
I/O operation?
+
Input and output operations involving data streams.
Synchronous I/O?
+
I/O operations that block execution until completed.
Asynchronous I/O?
+
Non-blocking I/O operations using async and await.
Buffering in I/O?
+
Temporarily storing data in memory during I/O operations.
Proper resource disposal important?
+
To release unmanaged resources and avoid memory leaks.
Namespace supports reflection?
+
System.Reflection.
Can reflection be used for?
+
Inspecting types, invoking methods, and creating instances
dynamically.
Assembly class?
+
Represents a loaded .NET assembly.
Type class?
+
Provides information about data types at runtime.
GetType() method?
+
Returns the Type information of an object.
Activator class?
+
Used to create object instances dynamically.
Attributes in C#?
+
Metadata used to add declarative information to code elements.
Custom attribute?
+
A user-defined attribute created by inheriting Attribute class.
Attributes be applied?
+
Classes, methods, properties, fields, and assemblies.
Attribute usage?
+
Defines where and how an attribute can be applied.
Reflection used for attributes?
+
To read attribute metadata at runtime.
Unsafe code?
+
Code that allows pointer operations.
Keyword enables unsafe code?
+
unsafe keyword.
Span
+
?
ReadOnlySpan
+
?
Advanced C# best practices?
+
Use async properly, avoid reflection misuse, and write clean,
maintainable code.
.NET?
+
A framework that provides runtime, libraries, and tools for
building applications.
?. operator?
+
Null conditional operator to avoid NullReferenceException.
“throw” vs “throw ex”
+
throw preserves original stack trace., throw ex resets stack
trace.
Accessibility in interface
+
All members in an interface are implicitly public., No need for
modifiers because interfaces define a contract.
ADO.NET?
+
Data access framework for .NET.
Anonymous method?
+
Inline method declared without a name.
Anonymous Types in C#?
+
Anonymous types allow creating objects without defining a
class. They are mostly used with LINQ queries to store temporary data. Example: var
person = new { Name = "John", Age = 30 };.
ArrayList?
+
Non-generic dynamic array.
Arrays in C#?
+
Arrays are fixed-size, strongly-typed collections that store
elements of the same type., They provide indexed access and are stored in contiguous
memory.
Async stream?
+
Async iteration using IAsyncEnumerable.
Attribute in C#?
+
Metadata added to assemblies, classes, or members.
Attributes
+
Metadata added to code elements., Used for runtime behavior
control., Example: [Obsolete], [Serializable].
Auto property?
+
Property with implicit backing field.
Base class for all classes
+
System.Object is the root base class in .NET., All classes
derive from it directly or indirectly.
Boxing and Unboxing:
+
Boxing converts a value type to an object type. Unboxing
extracts that value back from the object. Boxing is slower and stored on heap.
C#?
+
C# is an object-oriented programming language developed by
Microsoft. It is used to build applications for web, desktop, cloud, and mobile
platforms. It runs on the .NET framework.
C#? Latest version?
+
C# is an object-oriented programming language from Microsoft
built on .NET. It supports strong typing, inheritance, and modern features like LINQ
and async. The latest version (as of 2025) is C# 13.
Can “this” be used within a static method?
+
No, the this keyword cannot be used inside a static method.,
Static methods belong to the class, not to a specific object instance., Since this
refers to the current instance, it is only valid in instance methods.
Can a private virtual method be overridden?
+
No, because private methods are not accessible in derived
classes and virtual methods require inheritance.
Can multiple catch blocks be executed?
+
No, only one catch block executes—the one that matches the
thrown exception. Other catch blocks are ignored.
Can multiple catch blocks execute?
+
No, only one matching catch block executes in a try-catch
structure., The first matching exception handler is executed and others are skipped.
Can we use “this” keyword within a static method?
+
No, because this refers to the current instance, and static
methods belong to the class—not an object.
Circular references
+
Occur when two or more objects reference each other., This
prevents objects from being garbage collected., Common in linked structures.,
Requires proper cleanup strategies.
Class vs struct?
+
Class is reference type; struct is value type.
CLR?
+
Common Language Runtime; manages execution, memory, security,
and threading.
CLS?
+
Common Language Specification; rules for .NET language
interoperability.
If interfaces have identical method signatures, only one
implementation is needed., If behavior differs, explicit interface implementation
must be used.
Console application
+
Runs in command-line interface., No GUI., Used for scripting or
service apps.
Constant vs Readonly:
+
const is compile-time constant and cannot change after
compilation. readonly can be assigned at runtime (constructor). const is static by
default.
Continue vs Break:
+
continue skips remaining loop code and moves to next iteration.
break exits the loop entirely. Both control loop execution flow.
Contravariance?
+
Allows base types where derived types expected.
Covariance?
+
Allows derived types more liberally.
Create array with non-default values
+
int[] arr = Enumerable.Repeat(5, 10).ToArray();
CTS?
+
Common Type System; defines how data types are declared and
used.
Custom Control and User Control?
+
User control is built by combining existing controls (drag and
drop)., Custom control is created from scratch and reused across applications.
Custom Exceptions
+
User-defined exceptions for specific application errors.,
Created by inheriting Exception class., Helps make error handling meaningful and
readable., Used to represent domain-specific failures.
Define Constructors
+
A constructor is a special method that initializes objects when
created. It has the same name as the class and doesn’t return a value.
Delegates
+
A delegate is a type that holds a reference to a method.,
Enables event handling and callback mechanisms., Supports type safety and
encapsulation of method calls., Similar to function pointers in C++.
Describe the accessibility modifier “protected internal”.
+
It means the member can be accessed within the same assembly or
from derived classes in other assemblies.
Deserialization?
+
Converting serialized data back to object.
Dictionary?
+
Key-value collection.
Array & List?
+
Array has fixed size; List grows dynamically.
C# and .NET?
+
C# is a programming language; .NET is the runtime and
framework.
Const and readonly?
+
const is compile-time constant; readonly is runtime constant.
Dictionary and Hashtable?
+
Dictionary is generic and faster.
IEnumerable and IQueryable?
+
IEnumerable executes in memory; IQueryable executes in
database.
Ref and out?
+
ref requires initialization; out does not.
Task and Thread?
+
Task is a higher-level abstraction running on thread pool;
Thread is OS-level.
DiffBet “is” and “as”
+
is checks compatibility., as tries casting and returns null if
fails, no exception.
DiffBet == and Equals():
+
== checks reference equality for objects and value equality for
value types., Equals() can be overridden for custom comparison logic.
DiffBet Array and ArrayList:
+
Array has fixed size and stores a single data type., ArrayList
is dynamic and stores objects, requiring boxing/unboxing for value types.
DiffBet Array and ArrayList?
+
Array has fixed size and stores same data type., ArrayList can
grow dynamically and stores mixed types.
DiffBet Array.CopyTo() and Array.Clone()
+
Clone() creates a shallow copy of the array including its
size., CopyTo() copies elements into an existing array starting at a specified
index., Clone() returns a new array of the same type., CopyTo() requires the
destination array to be allocated beforehand.
DiffBet Array.CopyTo() and Array.Clone():
+
CopyTo() copies array elements to an existing array., Clone()
creates a shallow copy of the entire array as a new instance.
DiffBet boxing and unboxing:
+
Boxing converts a value type to a reference type (object).,
Unboxing converts the object back to its original value type., Boxing is implicit;
unboxing must be explicit and can cause runtime errors if mismatched.
DiffBet constants and read-only?
+
const must be assigned at compile time and cannot change.,
readonly can be assigned at runtime, usually in a constructor.
DiffBet Dispose and Finalize in C#:
+
Dispose() is called manually to release unmanaged resources
using IDisposable., Finalize() (destructor) is called automatically by the Garbage
Collector., Dispose provides deterministic cleanup, while Finalize is
non-deterministic and slower.
DiffBet Finalize() and Dispose()
+
Finalize() is called by the garbage collector and cannot be
invoked manually., Dispose() is called manually to release unmanaged resources.,
Finalize() has performance overhead., Dispose() is implemented via IDisposable.
DiffBet IEnumerable and IQueryable:
+
IEnumerable filters data in memory and is suitable for
in-memory collections., IQueryable filters data at the database level using
expression trees., IQueryable supports remote querying, improving performance for
large datasets.
DiffBet interface and abstract class
+
Interface contains only declarations, no implementation (until
default methods in new versions)., Abstract class can have both abstract and
concrete methods., A class can inherit multiple interfaces but only one abstract
class., Interfaces define a contract; abstract classes provide a base.
DiffBet Is and As operators:
+
is checks whether an object is compatible with a type and
returns true/false., as performs safe casting and returns null if the cast fails.
DiffBet late and early binding:
+
Early binding occurs at compile time (e.g., method calls on
known types)., Late binding happens at runtime (e.g., using dynamic or reflection).,
Early binding is faster and type-safe, while late binding is flexible but slower.
DiffBet public, static, and void?
+
public means accessible anywhere., static belongs to the class,
not the instance., void means the method does not return any value.
DiffBet ref & out parameters?
+
ref requires the variable to be initialized before passing.,
out does not require initialization but must be assigned inside the method.
DiffBet String and StringBuilder in C#:
+
String is immutable, meaning every modification creates a new
object., StringBuilder is mutable and efficient for repeated string manipulation.,
StringBuilder is preferred when working with dynamic or large text modifications.
DiffBet System.String and StringBuilder
+
String is immutable, meaning any modification creates a new
object., StringBuilder is mutable and allows in-place modifications., StringBuilder
is preferred for frequent string operations like concatenation., String is simpler
and better for small or static content.
DiffBet Throw Exception and Throw Clause:
+
throw ex; resets the stack trace., throw; preserves the
original stack trace, making debugging easier.
DirectCast vs CType
+
DirectCast requires exact type., CType supports conversions
defined in VB or framework.
Dynamic keyword?
+
Type resolved at runtime.
Enum:
+
Enum is a value type representing named constants. Helps
improve code readability. Default underlying type is integer.
Enum?
+
Value type representing named constants.
Event?
+
Used to provide notifications using delegates.
Exception?
+
Runtime error.
Explain types of comment in C# with examples
+
There are three types:, Single-line: // comment, Multi-line: /*
comment */, XML documentation: ///
Extension method in C#?
+
An extension method adds new functionality to existing classes
without modifying them., It is defined in a static class and uses the this keyword
before the first parameter., They are commonly used with LINQ and utility
enhancements.
Extension method?
+
Adds new methods to existing types without modifying them.
File Handling in C#.Net?
+
File handling allows reading, writing, and manipulating files
using classes like File, FileStream, StreamReader, and StreamWriter. It is used to
store or retrieve data from physical files.
Finally?
+
Block executed regardless of exception.
GC generations?
+
Gen 0, Gen 1, Gen 2.
Generic type?
+
Allows type parameters for safe and reusable code.
Generics in .NET
+
Generics allow type-safe collections without boxing/unboxing.,
They improve performance and reusability., Examples: List , Dictionary ., They
enable compile-time type checking.
Generics?
+
Generics allow classes and methods to operate on types without
specifying them upfront., They provide type safety and improve performance by
avoiding boxing/unboxing.
HashSet?
+
Collection of unique items.
Hashtable in C#?
+
A Hashtable stores key-value pairs and provides fast access
using a hash key. Keys are unique, and values can be of any type. It belongs to
System.Collections.
Hashtable?
+
Non-generic key-value collection.
Use the “using” statement in C#?
+
The using statement ensures that resources like files or
database connections are properly closed and disposed after use. It helps prevent
memory leaks by automatically calling Dispose(). Example: using(StreamReader sr =
new StreamReader("file.txt")) { }.
Inherit a class
+
class B : A, {, }
Prevent SQL Injection?
+
Use parameterized queries.
Use Nullable<> Types?
+
Nullable types allow value types (like int) to store null using
Nullable or ?., Example: int? age = null;.
IEnumerable is an interface used to iterate through a
collection using foreach., It supports forward-only iteration and deferred
execution., It does not support querying or modifying items directly.
In keyword?
+
Pass parameter by readonly reference.
Indexers
+
Allow a class to be accessed like an array., public string
this[int index] { get; set; }
Indexers?
+
Indexers allow objects to be accessed like arrays using
brackets []., They provide dynamic access to internal data without exposing
underlying collections.
Inherit class but prevent method override
+
Use sealed keyword on the method., public sealed override void
Method() { }
Interface class? Give an example
+
An interface contains declarations of methods without
implementation. Classes must implement them., Example: interface IShape { void
Draw(); }.
Interface vs Abstract Class:
+
Interface only declares members; no implementation (until
default implementations in newer versions). Abstract class can have both abstract
and concrete members. A class can implement multiple interfaces but inherit only one
abstract class.
IOC container?
+
Automates dependency injection and object creation.
Jagged Array in C#?
+
A jagged array is an array of arrays where each sub-array can
have different lengths. It provides flexibility if the data structure doesn't need
uniform size. Example: int[][] jagged = new int[2][]; jagged[0]=new int[3];
jagged[1]=new int[5];.
Jagged Arrays?
+
A jagged array is an array containing different-sized
sub-arrays. It provides flexibility in storing uneven data structures.
JSON serialization?
+
Using System.Text.Json or Newtonsoft.Json to serialize objects.
LINQ in C#?
+
LINQ (Language Integrated Query) is a feature used to query
data from collections, databases, XML, etc., using a unified syntax. It improves
readability and reduces code. Example: var result = from x in list where x > 10
select x;.
List?
+
Generic list that stores strongly typed items.
Lock keyword?
+
Prevents multiple threads from accessing critical code section.
Managed or unmanaged?
+
C# code is managed because it runs under CLR.
Managed vs Unmanaged Code:
+
Managed code runs under CLR with garbage collection and memory
management. Unmanaged code runs directly on OS without CLR support (like C/C++).
Managed code is safer but slower.
Monitor?
+
Provides advanced locking features.
MSIL?
+
Microsoft Intermediate Language generated before JIT.
Multicast delegate
+
A delegate that can reference multiple methods., Invokes them
in order., Used in event handling.
Multicast delegate?
+
A multicast delegate holds references to multiple methods.,
When invoked, it executes all assigned methods in order.
Multithreading with .NET?
+
Multithreading allows a program to run multiple tasks
simultaneously, improving performance and responsiveness. In .NET, threads can be
created using the Thread class or Task Parallel Library. It is commonly used in
applications requiring background processing.
Mutex?
+
Synchronization primitive across processes.
Nnullable type?
+
Value type that can hold null using ? syntax.
Nullable types
+
int? x = null;, Used to store value types with null support.
Null-Coalescing operator ??
+
Returns right operand if left operand is null.
Object pool
+
Object pooling reuses a set of pre-created objects., Improves
performance by avoiding costly object creation., Common in high-performance
applications., Useful for objects with expensive initialization.
Object Pooling?
+
Object pooling reuses frequently used objects instead of
creating new ones., It improves performance by reducing memory allocation and
garbage collection.
Out keyword?
+
Pass parameter by reference but must be assigned inside method.
Overloading vs overriding
+
Overloading: same method name, different parameters.,
Overriding: derived class changes base class implementation., Overloading happens at
compile time; overriding at runtime., Overriding requires virtual and override
keywords.
Override keyword?
+
Used to override a virtual/abstract method.
Partial classes and why needed?
+
Partial classes allow a class definition to be split across
multiple files., They help in code organization, especially auto-generated code and
manual code separation., The compiler combines all partial files into a single class
at runtime.
Pattern matching?
+
Technique to match types and conditions.
Preprocessor directive?
+
Instructions to compiler like #if, #region.
Properties in C#?
+
Properties are class members used to read, write, or compute
values., They provide controlled access to private fields using get and set
accessors., Properties improve encapsulation and help enforce validation on
assignment.
Property?
+
Getter/setter wrapper for fields.
Race Condition?
+
Conflict when multiple threads access shared data.
Record type?
+
Immutable reference type introduced in C# 9.
Ref keyword?
+
Pass parameter by reference.
Ref vs out:
+
ref requires variable initialization before passing. out does
not require initialization but must be assigned inside the method. Both pass
arguments by reference.
Reflection in C#?
+
Reflection allows inspecting and interacting with metadata
(methods, properties, types) at runtime. It is used in frameworks, serialization,
and dynamic object creation using System.Reflection.
Reflection?
+
Inspecting metadata and creating objects dynamically.
Remove element from queue
+
queue.Dequeue();
Role of Access Modifiers:
+
Access modifiers control visibility of classes and members.,
Examples include public, private, protected, and internal to enforce encapsulation.
Sealed classes in C#?
+
A sealed class prevents inheritance. It is used to stop
modification of behavior. Example: sealed class A { }.
Semaphore?
+
Limits number of threads accessing a resource.
Serialization in C#?
+
Serialization is the process of converting an object into a
format like XML, JSON, or binary for storage or transfer. It allows objects to be
saved to files, memory, or sent over a network. Deserialization is the reverse,
which reconstructs the object from serialized data.
Serialization?
+
Serialization converts an object into a storable or
transferable format like JSON, XML, or binary. It is used for saving or transmitting
data.
Singleton pattern
+
public class Singleton {, private static readonly Singleton
instance = new Singleton();, private Singleton() {}, public static Singleton
Instance => instance;, }
Singleton Pattern and implementation?
+
Singleton ensures only one instance of a class exists
globally., It is implemented using a private constructor, a static field, and a
public static instance property.
Sorting array in descending order
+
Array.Sort(arr);, Array.Reverse(arr);
SQL Injection?
+
Attack where malicious SQL is injected.
Static constructor?
+
Initializes static members of a class.
Static variable?
+
Shared among all instances of a class.
Struct vs class
+
Struct is value type; class is reference type., Structs stored
on stack; classes stored on heap., Structs cannot inherit but can implement
interfaces., Classes support full inheritance.
Struct vs Class:
+
Structs are value types and stored on stack; classes are
reference types and stored on heap. Structs do not support inheritance. Classes
support features like virtual methods.
A lightweight data structure with multiple values.
Unboxing?
+
Extracting value type from object.
Use of ‘using’ statement in C#?
+
It ensures automatic cleanup of resources by calling Dispose()
when the scope ends. Useful for files, streams, and database connections.
Use of a delegate in C#:
+
A delegate represents a reference to a method., It allows
methods to be passed as parameters and supports callback mechanisms., Delegates
enable event handling and implement loose coupling.
Value types and reference types?
+
Value types store data directly (int, float, bool)., Reference
types store memory addresses to objects (class, array, string).
Var?
+
Implicit local variable type inferred at compile time.
Ways a method can be overloaded:
+
Overloading can be done by changing:, ✓ Number of parameters, ✓
Type of parameters, ✓ Order of parameters
Ways to overload a method
+
Change number of parameters., Change data type of parameters.,
Change order of parameters (only if type differs).
CircleCI is a cloud-based CI/CD platform that automates build
test and deployment workflows.
Code quality analysis in ci/cd?
+
Code quality analysis checks code for bugs vulnerabilities
style and maintainability using tools like SonarQube.
Configuration file in ci/cd?
+
Configuration file defines the pipeline steps environment
variables triggers and deployment settings.
Containerization in ci/cd?
+
Containerization packages software and dependencies into a
portable container often using Docker.
Continuous delivery (cd)?
+
CD is the practice of automatically preparing code changes for
release to production.
Continuous deployment?
+
Continuous Deployment automatically deploys code changes to
production after passing tests without manual intervention.
Continuous integration (ci)?
+
CI is the practice of frequently integrating code changes into
a shared repository with automated builds and tests.
Continuous monitoring in ci/cd?
+
Continuous monitoring tracks application performance errors and
metrics post-deployment.
Dependency management in ci/cd?
+
Dependency management ensures required libraries packages and
modules are available during builds and deployments.
Deployment frequency?
+
Deployment frequency measures how often software changes are
deployed to production.
Devops?
+
DevOps is a culture and set of practices combining development
and operations to deliver software faster and reliably.
Diffbet a pipeline and a workflow?
+
Pipeline refers to a sequence of automated steps; workflow
includes branching approvals and manual triggers in CI/CD.
Diffbet ci and cd?
+
CI (Continuous Integration) merges code frequently, builds, and
tests automatically., CD (Continuous Delivery/Deployment) deploys tested code to
environments automatically.
Diffbet ci and nightly builds?
+
CI triggers builds on each commit; nightly builds run at
scheduled times typically once per day.
Diffbet ci/cd and devops?
+
CI/CD is a subset of DevOps practices focused on automation;
DevOps includes culture collaboration and infrastructure practices.
Diffbet continuous delivery and continuous deployment?
+
Continuous Delivery requires manual approval for deployment;
Continuous Deployment is fully automated to production.
Diffbet declarative and scripted jenkins pipelines?
+
Declarative pipelines use a structured readable syntax;
scripted pipelines use Groovy scripts with more flexibility.
Docker in ci/cd?
+
Docker is a platform to build ship and run applications in
containers.
Dynamic code analysis in ci/cd?
+
Dynamic code analysis inspects running code to detect runtime
errors or performance issues.
Feature branching in ci/cd?
+
Feature branching involves developing new features in isolated
branches to prevent conflicts in the main branch.
Fork vs clone?
+
Fork is a copy on the server; clone is a local copy of a repo.
Fork enables collaboration via PRs.
Gitlab ci file?
+
.gitlab-ci.yml defines GitLab CI/CD pipeline stages jobs and
configurations.
Gitlab ci/cd pipeline?
+
Pipeline defines jobs, stages, and scripts to automate build,
test, and deploy.
Gitlab runner?
+
A GitLab runner executes CI/CD jobs defined in GitLab
pipelines.
Immutable infrastructure in ci/cd?
+
Immutable infrastructure involves replacing servers or
environments rather than modifying them.
Integration test?
+
Integration test checks the interaction between multiple
components or systems.
Is ci/cd implemented in azure repos?
+
Using Azure Pipelines linked to repos, automatically triggering
builds and deployments.
Is ci/cd implemented in bitbucket?
+
Using Bitbucket Pipelines defined in bitbucket-pipelines.yml.
Is ci/cd implemented in github?
+
Using GitHub Actions defined in .yml workflows, triggered on
push, PR, or schedule.
Is ci/cd implemented in gitlab?
+
Using .gitlab-ci.yml and GitLab Runners to automate builds,
tests, and deployments.
Logical criteria used inside workflows to branch paths: e.g. if
amount > X then route to manager; else proceed to next step.
:contentReference[oaicite:23]{index=23}
360‑degree customer view in creatio?
+
A unified profile that stores contact info, interaction
history, orders/cases/contracts — giving full visibility across departments.
:contentReference[oaicite:4]{index=4}
Advantages of using workflow automation vs manual processes?
+
Consistency, reduced errors, speed, auditability, scalability,
and freeing up human resources for strategic work.
:contentReference[oaicite:25]{index=25}
Ai‑native crm in creatio?
+
AI is embedded at the core: predictive, generative, and agentic
AI features (lead scoring, automated actions, email generation, insights) to support
CRM tasks. :contentReference[oaicite:12]{index=12}
Ai‑powered lead scoring in creatio?
+
AI analyzes lead data/history to assign scores to leads —
helping sales/marketing prioritize high‑potential leads automatically.
Api integrations in creatio crm?
+
REST / API endpoints provided by Creatio to integrate with
external systems (ERP, e‑commerce platform, telephony, webhooks, etc.).
:contentReference[oaicite:35]{index=35}
Api rate‑limiting and performance considerations for
integrations in creatio?
+
When using APIs for integrations, pay attention to request
rates, data volume, and trigger load to avoid performance issues.
Approach for a business continuity plan involving creatio crm
(downtime, disaster)?
+
Have backups, redundancy, plan for failover, offline data
access if supported, data export strategy, manual process fallback.
Approach for auditing user permissions and data access
regularly in creatio?
+
Run audit logs, review roles, validate access levels, revoke
unused permissions, enforce least privilege principle.
Approach for customizing creatio ui for brand/organization
requirements?
+
Configure layouts, themes, labels, custom fields, modules, and
optionally custom code/extensions if needed.
Approach for gdpr / data‑privacy compliance with creatio in eu
or regulated regions?
+
Implement consent fields, data access controls, data retention
/ purge policies, audit logs, role‑based permissions.
Approach for handling data migration during major schema
changes in creatio?
+
Export existing data, map to new schema, transform as needed,
import to new model, validate data integrity, test workflows.
Approach for integrating creatio with e‑commerce or web‑forms
(lead capture)?
+
Use APIs/webhooks to push form data to Creatio, auto-create
leads or contacts, trigger workflows for follow-up or assignment.
Approach for long‑term scalability and maintainability of
custom apps built on creatio?
+
Document schema and workflows, follow naming and versioning
standards, modular design, regular review and cleanup.
Approach for migration from another crm to creatio without
losing history and data relationships?
+
Extract full data including history, map
entities/relationships, import in correct order (e.g. accounts before
opportunities), maintain IDs or references, test thoroughly.
Approach for multi‑department collaboration using creatio
across sales, service, marketing?
+
Define shared workflows, permissions, data model; ensure proper
assignment and notifications; use unified customer profile.
Approach for testing performance under load with many
concurrent workflows/users in creatio?
+
Simulate load, monitor response times, optimize workflows,
scale resources, archive old data, avoid heavy triggers.
Approach for user feedback and continuous improvement after
rollout of creatio?
+
Collect user feedback, analyze issues, refine workflows/UI,
conduct periodic training, and update documentation.
Approach to ensure data integrity when multiple integrations
write to creatio?
+
Implement validation rules, transaction checks, error handling,
deduplication logic and monitoring to prevent data corruption.
Approach to incremental rollout of creatio to large
organization?
+
Pilot with small user group, gather feedback, refine workflows,
train next group, gradually expand — reduce risk and ensure adoption.
Approach to integrate creatio with external analytics tool
(bi)?
+
Use APIs to export CRM data or connect BI tool to database;
schedule regular exports; maintain data integrity and mapping.
Approach to retire or archive old/unused data or workflows in
creatio?
+
Identify deprecated records/processes, archive or delete,
update workflows to avoid referencing removed data, backup before cleaning.
Audit & compliance readiness when using creatio for regulated
industries (finance, healthcare)?
+
Use access controls, audit logs, encryption, data
retention/archival policies, strict permissions and workflow approvals.
Audit compliance (e.g. gdpr, iso) support in creatio?
+
Use audit logs, permissions, role‑based access, data retention
policies, secure integrations to comply with regulatory requirements.
Audit log for user actions in creatio?
+
Records user activities — login, data modifications, workflow
executions — useful for security, compliance, and tracking.
Audit logging frequency and storage management when many user
activities logged in creatio?
+
Define retention policies, purge or archive older logs, store
securely — avoid excessive storage while maintaining compliance.
Audit trail / history tracking in creatio?
+
Record changes to data — who changed what and when — useful for
compliance, tracking updates, accountability.
Backup and disaster recovery planning with creatio crm?
+
Regular backups, off‑site storage, redundancy, version control
to ensure data safety in case of failures or data corruption.
Benefit of crm + bpm (business process management) combined,
as with creatio, compared to standard crm?
+
Allows not only managing customer data but automating
operational, internal and industry‑specific business processes — increases
efficiency and flexibility.
Benefit of modular licensing model for growing businesses?
+
They can add modules/users as needed, scale gradually without
paying for unneeded features upfront.
Benefits of low‑code crm for businesses, as offered by
creatio?
+
Faster deployment, lower dependence on developers, reduced
costs, and flexible adaptation to changing business needs.
:contentReference[oaicite:10]{index=10}
Best practice for naming conventions (entities, fields,
workflows) in creatio customisation?
+
Use meaningful names, consistent prefixes/suffixes, document
definitions — helps maintain clarity and avoid conflicts.
Best practice for testing custom workflows in creatio before
production?
+
Use sandbox, test for all edge cases, verify permissions,
simulate data inputs, run load tests, backup data.
Best way to manage schema changes (entities, fields) in
creatio over time?
+
Define change log, version workflows, document changes, backup
data, communicate to stakeholders, test in sandbox.
Bulk data import/export in creatio?
+
Supports bulk import/export operations (CSV/Excel) for
contacts, leads, data migration, backups, and mass updates.
Can creatio be used beyond crm — e.g. for hr, project
management, internal workflows?
+
Use its low‑code BPM / workflow engine and custom entities to
model internal processes (onboarding, approvals, project tracking).
Can creatio help a service/support team improve customer
resolution time?
+
By automating ticket routing, SLA enforcement, case assignment,
and using AI agents to suggest responses or prioritize cases.
:contentReference[oaicite:26]{index=26}
Can non‑technical users customise creatio crm?
+
Yes — business users (sales/marketing/service) can use visual
designers to build workflows, layouts, dashboards, etc., without coding.
:contentReference[oaicite:11]{index=11}
Can you customize ui layouts and dashboards in creatio without
coding?
+
Using visual designers in Creatio’s studio — drag‑and‑drop
fields, panels, dashboards; rearrange layouts as per business needs.
:contentReference[oaicite:21]{index=21}
Can you extend creatio with custom code when no‑code tools are
not enough?
+
Use provided SDK/API, write custom scripts/integrations, use
REST endpoints or external services — while keeping core no‑code logic separate.
Can you implement marketing roi tracking in creatio?
+
Use campaign and lead‑to‑sale tracking, assign leads to
campaigns, track conversions, revenue, attribution and generate reports/dashboards.
Change management best practice when implementing creatio?
+
Define business processes clearly, plan roles/permissions, test
workflows in sandbox, migrate data carefully, train users, and roll out
incrementally.
Change management when business processes evolve — to update
creatio workflows?
+
Use versioning, test updated workflows in sandbox, communicate
changes, train users — avoid breaking active business flows.
Changelog or release management in creatio when you update
workflows?
+
Track and manage workflow changes; test in sandbox; deploy to
production safely; rollback if needed.
Common challenges when implementing creatio crm?
+
Data migration complexity, initial learning curve for
customisation/workflows, planning roles/permissions properly, defining business
processes before building.
Common use‑cases for workflow automation in creatio?
+
Lead → opportunity process, ticket/case management, loan/credit
application, onboarding workflows, approvals, order‑to‑invoice flows, etc.
:contentReference[oaicite:18]{index=18}
Configuration vs customization in creatio?
+
Configuration = using interface/tools to set up CRM without
coding; customization = writing scripts or using advanced settings where needed.
Contact and lead management in creatio?
+
It enables capturing leads/contacts, managing their data,
tracking communications and statuses until conversion.
:contentReference[oaicite:6]{index=6}
Contract/invoice/order management inside creatio?
+
CREATIO allows creation/tracking of orders, generating
invoices/contracts, tracking status — integrating financial/business transactions
within CRM. :contentReference[oaicite:33]{index=33}
Core modules available in creatio crm?
+
Sales, Marketing, Service (customer support), plus a
studio/platform for custom apps & workflows. :contentReference[oaicite:3]{index=3}
Creatio crm?
+
Creatio CRM is a cloud‑based CRM and business‑process
automation platform that unifies Sales, Marketing, Service, and workflow automation
on a low‑code/no‑code + AI‑native platform. :contentReference[oaicite:1]{index=1}
Creatio marketplace?
+
A repository of 700+ applications/integrations/templates to
extend functionality and adapt CRM to different industries or needs.
:contentReference[oaicite:13]{index=13}
Custom app in creatio?
+
An application built on Creatio’s platform (using low‑code
tools) tailored for specific business processes beyond standard CRM (e.g. HR,
project management, vertical‑specific flows).
Custom entity / object in creatio?
+
Users can define new entities (tables) beyond standard CRM ones
to map to business‑specific data (e.g. Projects, Vendors).
Custom field in creatio?
+
Extra field added to existing entity (contact, account,
opportunity etc.) to store business‑specific data (like tax ID, region code, etc.).
Custom report building for cross‑module analytics in creatio
(e.g. sales + service + marketing)?
+
Define queries combining multiple entities, set
filters/aggregations, schedule reports/dashboards — useful for overall business
insights.
Custom reporting vs standard reporting in creatio?
+
Standard reports are pre‑built for common needs; custom reports
are built by users to meet specific data/metric requirements (fields, filters,
aggregations).
Customer life‑cycle management in creatio?
+
Tracking from first contact (lead) to long-term relationship —
including sales, service, upsell, renewals, support — unified under CRM.
Customer portal capability in creatio for external users?
+
Option for customers to access portal to submit tickets, check
status, view history (where supported by configuration).
:contentReference[oaicite:38]{index=38}
Customer service (support) automation in creatio?
+
Support teams can manage tickets/cases, SLAs, communication
across channels — streamlining service workflows.
:contentReference[oaicite:8]{index=8}
Customizable workflow for onboarding new employees inside
creatio (hr use‑case)?
+
Define process: create employee record → assign manager → set
tasks → approvals → activation — all via CRM workflows.
Customization of workflows per geography or business unit in
creatio?
+
Define different workflows per region/business unit using the
flexible low‑code platform configuration.
Customization vs out‑of‑box use in creatio?
+
Out‑of‑box means using standard modules with minimal config;
customization involves building custom fields, workflows, layouts or apps to tailor
to specific needs.
Customizing creatio for project management instead of pure
crm?
+
Use custom entities (Projects, Tasks, Milestones),
relationships, workflows to manage projects and collaboration inside Creatio.
Data backup and restore in creatio?
+
Ability (or need) to backup CRM data periodically and restore
if needed — ensuring data safety (depending on deployment model).
Data deduplication and duplicate detection in creatio?
+
Mechanism to detect duplicate contacts/leads, merging
duplicates, and ensuring data integrity.
Data export from creatio?
+
Export contacts, leads, reports, analytics or any list to
CSV/Excel to allow sharing or offline analysis.
Data import in creatio?
+
Ability to import existing data (contacts, leads, accounts)
from external sources (CSV, Excel, other CRMs) into Creatio CRM.
Data privacy and gdpr / region‑compliance support in creatio?
+
Controls over personal data storage, permissions, access logs,
ability to anonymize or delete personal data as per compliance needs.
Data transformation during import in creatio?
+
Mapping legacy fields to new schema, cleaning data, applying
rules to convert/validate data before import — helps ensure data quality.
Describe you’d implement lead-to-cash process in creatio?
+
Explain mapping of entities (Lead → Opportunity → Order →
Contract/Invoice), workflows (lead scoring, assignment, approval), and integration
with billing/ERP.
Diffbet cloud deployment vs on‑premise deployment (if offered)
for creatio?
+
Cloud: easier scaling, maintenance; on-premise: more control
over data, possibly required for compliance or data‑sensitive businesses.
Diffbet synchronous and asynchronous tasks in workflow
processing (in principle)?
+
Synchronous executes immediately; asynchronous can be
scheduled/delayed or run in background — helps avoid blocking and allows scalable
processing.
Diffbet using creatio for only crm vs full bpm + crm use-case?
+
CRM-only: sales/marketing/service. Full BPM: includes internal
operations, HR, procurement, approvals, custom workflows.
Does 'composable architecture' mean in creatio?
+
You can mix and match modules, workflows, custom apps as
building blocks — composing CRM to business‑specific workflows without writing new
code. :contentReference[oaicite:14]{index=14}
Does creatio help in reducing total cost of ownership compared
to traditional crm systems?
+
Because of its low‑code nature and pre-built
modules/integrations, businesses can avoid heavy development costs and still get
customizable CRM. :contentReference[oaicite:19]{index=19}
Does creatio help in regulatory compliance or audit readiness?
+
Through audit trails, role‑based access, record‑history, SLA
tracking, and permissions/configuration to secure data and processes.
Does creatio support collaboration across teams?
+
Shared database, unified UI, communication and task‑assignment
workflows, role‑based permissions, cross‑team visibility.
:contentReference[oaicite:29]{index=29}
Does creatio support mobile access?
+
Yes — there is mobile access so users can manage CRM data and
tasks on the go. :contentReference[oaicite:17]{index=17}
Does creatio support order / invoice / contract management?
+
Yes — in addition to CRM, it supports orders, invoices and
contract workflows (order/contract management via CRM modules).
:contentReference[oaicite:16]{index=16}
Does low-code / no-code mean in creatio?
+
It means you can design workflows, applications, UI layouts and
business logic via visual designers (drag‑and‑drop, configuration) instead of
writing code. :contentReference[oaicite:2]{index=2}
Effort estimation when migrating legacy crm/data to creatio?
+
Depends on data volume, number of modules, custom workflows;
small CRM migration may take days, complex might take weeks with cleaning/mapping.
Error handling and retry logic in automated workflows in
creatio?
+
Define fallback steps, alerts/notifications on failure,
retrials or escalations to avoid data loss or stuck workflows.
Fallback/backup workflow when primary automation fails in
creatio?
Feature request and custom extension process for creatio when
built-in features are insufficient?
+
Use Creatio’s platform to build custom fields/ entities;
optionally develop custom code or use external services integrated via API.
Global query in creatio (search across crm)?
+
Search across contacts, leads, accounts, cases, opportunities
etc — unified search to find any record quickly across modules.
Help‑desk / ticketing workflow in creatio service module?
+
Automated case creation, assignment, SLA monitoring, escalation
rules, status tracking, notifications, and case history management.
:contentReference[oaicite:31]{index=31}
Integration capabilities does creatio support?
+
APIs and pre-built connectors to integrate with external
systems (ERP, email, telephony, third‑party tools) for seamless data flow.
:contentReference[oaicite:15]{index=15}
Integration testing when creatio interacts with external
systems (erp, e‑commerce)?
+
Test data exchange, error handling, latency, API limits,
conflict resolution — in sandbox before go-live.
Integration with external systems (erp, e‑commerce, telephony)
via creatio apis?
+
Use built‑in connectors or REST APIs to sync data between
Creatio and external systems (orders, inventory, customer data) for unified
operations. :contentReference[oaicite:44]{index=44}
Kind of businesses benefit most from creatio?
+
Mid‑size to large enterprises with complex
sales/service/marketing processes needing flexibility, automation, and scalability.
:contentReference[oaicite:30]{index=30}
Knowledge base management in creatio service module?
+
Store FAQs, manuals, service guides — searchable knowledge base
to help agents and customers resolve issues quickly.
:contentReference[oaicite:39]{index=39}
Lead nurturing in creatio?
+
Automated sequence of interactions (emails, reminders, tasks)
to gradually engage leads until they are sales-ready (qualified).
Lead-to-order process in creatio?
+
Flow from lead capture → qualification → opportunity → order →
contract/invoice generation — all managed through CRM workflows.
License & pricing model for creatio (user‑based,
module‑based)?
+
Creatio uses modular licensing — clients pay per user per
module(s) — flexibility to subscribe only to needed modules.
:contentReference[oaicite:45]{index=45}
Marketing automation in creatio?
+
Tools to run campaigns, nurture leads, segment contacts,
automate email/social campaigns, measure results — all within CRM.
:contentReference[oaicite:7]{index=7}
Marketing campaign workflow in creatio?
+
Lead segmentation → campaign initiation → email/social outreach
→ track responses → scoring → follow‑ups or nurture → convert to opportunity.
Monitoring & alerting setup for sla / ticketing workflows in
creatio?
+
Configure alerts/notifications on SLA breach, escalation rules,
dashboards for SLA compliance tracking.
Multi‑channel customer communication in creatio?
+
Support for email, phone calls, chat, social media — all
interactions logged and managed centrally. :contentReference[oaicite:43]{index=43}
Multitenancy support in creatio (for agencies)?
+
Ability to manage separate organizations/business units under
same instance with segregated data and permissions.
No-code agent builder in creatio?
+
A visual tool where users can assemble AI agents (with skills,
workflows, knowledge bases) without writing code — enabling automation, content
generation, notifications, etc. :contentReference[oaicite:27]{index=27}
Omnichannel communication support in creatio?
+
Handling customer interactions across multiple channels (email,
phone, chat, social) unified under CRM to track history and response.
:contentReference[oaicite:34]{index=34}
Performance monitoring / logging in creatio for workflows and
system usage?
+
Track execution times, error rates, user activity, data volume
— helps identify bottlenecks or abuse.
Performance optimization in creatio?
+
Use As‑needed workflows, limit heavy triggers, archive old
data, optimize reports, and use no‑tracking dashboards for speed.
Pipeline (sales pipeline) management in creatio?
+
Visual pipeline tools that let you track deals across stages,
forecast revenue, and manage opportunities from lead through closure.
:contentReference[oaicite:5]{index=5}
Pre‑built industry‑specific workflows in creatio?
+
Templates and predefined workflows tailored to verticals
(finance, telecom, services, etc.) for common business processes — reducing need to
build from scratch. :contentReference[oaicite:28]{index=28}
Process to add a new module or functionality in creatio after
initial implementation?
+
Use studio to configure module, define
entities/fields/workflows, set permissions, test, and enable for users — without
major downtime.
Real-time analytics vs scheduled reports in creatio?
+
Real-time analytics updates with data changes; scheduled
reports are generated at intervals (daily/weekly/monthly) for review or export.
Recommended backup frequency for crm system like creatio?
+
Depends on volume and business needs — daily or weekly backups
for critical data; more frequent for high‑transaction systems.
Recommended user onboarding/training plan when company moves
to creatio?
Customizable dashboards and reports to track KPIs — sales
performance, marketing campaign ROI, service metrics, team performance, etc.
:contentReference[oaicite:40]{index=40}
Role of metadata/schema management in creatio custom apps?
+
Define custom entities/tables, fields, relationships, data
types — maintain schema for custom business needs without coding.
Role‑based access control (rbac) in creatio?
+
You can define roles and permissions to control which users or
teams access which data/modules/features in CRM — ensuring security and proper
access. :contentReference[oaicite:20]{index=20}
Rollback plan when automated workflows produce unintended
consequences (e.g. wrong data update)?
+
Use backups, audit logs to identify changes, revert changes or
re‑process via scripts or manual corrections, notify stakeholders.
Rollback strategy for a failed workflow or customization in
creatio?
+
Restore from backup, revert to previous workflow version, run
data correction scripts, notify users and audit changes.
Sales forecasting in creatio crm?
+
Based on pipeline data and past history, predicting future
sales, revenue and chances of deal closure using built‑in analytics/AI tools.
:contentReference[oaicite:32]{index=32}
Sandbox or test environment in creatio before production
deployment?
+
A separate instance or environment where you can test
workflows, customizations, and integrations before applying to live data.
Sandbox testing best practices before deploying workflows in
enterprise creatio?
+
Test all branches, edge cases, user roles, data flows; verify
security; backup data; get stakeholder sign-off.
Sandbox vs production environment in creatio implementation?
+
Sandbox used for testing customizations and workflows;
production is live environment — helps avoid disrupting live data.
Scalability concern when many custom workflows and
integrations are added to creatio?
+
Ensure optimized workflows, limit heavy triggers, archive old
data, monitor performance — avoid overloading instance.
Scalability of creatio for large enterprises?
+
With cloud/no‑code + modular architecture, Creatio supports
large datasets, many users, and complex workflows across departments.
:contentReference[oaicite:42]{index=42}
Security and permissions model in creatio?
+
Role‑based permissions, access control on modules/data,
record-level permissions to ensure data security and compliance.
:contentReference[oaicite:36]{index=36}
Separation of environments (development, staging, production)
in creatio deployment?
+
Maintain separate environments to develop/test customizations,
test integrations, then deploy to production safely.
Sla configuration for service tickets in creatio?
+
Ability to define service‑level agreements, monitor response
times/resolution deadlines, automate reminders/escalations when SLAs are near
breach. :contentReference[oaicite:37]{index=37}
Soft delete vs hard delete of records in creatio?
+
Soft delete marks record inactive (kept for history/audit);
hard delete removes record permanently (used carefully to avoid data loss).
Strategy for managing multi‑region compliance & localization
when using creatio globally?
+
Use localized fields, regional data storage policies, consent
management, region‑specific workflows and permissions per region.
Support and maintenance requirement after creatio deployment?
+
Monitor system performance, update workflows, backup data,
manage permissions, handle upgrades and user support.
Support for gdpr / data privacy enforcement in creatio
workflows?
+
Configure consent fields, access permissions, data retention
policies, anonymization procedures where applicable.
Support for multiple currencies and multi‑region data in
creatio?
+
Configure fields and entities to support currencies,
localization, region‑specific workflows for global businesses.
Support for multiple languages in ui and data in creatio?
+
Locales and language packs — ability to configure UI labels,
messages, data format for global teams/customers.
Support for role-based dashboards and views in creatio?
+
Managers, sales reps, support agents can have tailored
dashboards showing data relevant to their role.
Testing strategy for new workflows or custom apps in creatio?
+
Use sandbox environment, simulate all scenarios, test edge
cases, verify data integrity, run performance tests, get user sign‑off before
production.
To build a customer feedback survey workflow within creatio?
+
Create survey entity, send survey via email/workflow after
service/ticket resolution, collect responses, store data, trigger follow‑ups based
on feedback.
To design backup & disaster recovery for medium / large
creatio deployments?
To ensure performance when running large bulk data imports
into creatio?
+
Use batch imports, disable triggers if needed, split data into
chunks, validate beforehand, monitor system load.
To evaluate whether to use out‑of‑box features vs build custom
workflows in creatio?
+
Compare business requirements vs built-in features, consider
complexity, maintenance cost, performance, ease of use before customizing.
To handle duplicates and data quality issues during migration
to creatio?
+
Use deduplication logic, validation rules, manual review for
conflicts, maintain audit logs of merges/cleanup.
To handle feature-request backlog and maintain roadmap when
using low‑code platform like creatio?
+
Prioritise based on impact, maintain documentation, version
workflows, schedule releases, gather user feedback, test before deployment.
To implement audit‑ready workflow logging and reporting in
creatio for compliance audits?
+
Enable audit logs, track user actions and changes, store
history, provide exportable reports for compliance reviews.
To implement cross‑department workflow (e.g. sales → service →
billing) in creatio?
+
Define entities and relationships, build multi-step workflows,
set permissions per department, use shared customer data, notifications and
handoffs.
To implement lead scoring and prioritisation using creatio
built‑in ai features?
+
Configure lead attributes, enable AI lead scoring, define
thresholds/triggers, auto‑assign or notify sales reps for high‑value leads.
To implement time‑based or scheduled workflows (e.g.
follow‑ups after 30 days) in creatio?
+
Use scheduling features or time‑based triggers to automatically
perform actions after specified intervals.
To integrate creatio with external analytics/bi platform for
advanced reporting?
+
Use API/data export, build ETL pipelines or direct DB
connections, schedule data sync, design reports as per business needs.
To manage data privacy and user consent (for marketing) inside
creatio?
+
Add consent fields, track opt‑in/opt‑out, restrict data access,
implement data retention policies, maintain audit logs.
To manage version control and deployment of customizations
across multiple environments (dev, test, prod) in creatio?
+
Use sandbox for dev/testing, version workflows, document
changes, test thoroughly, smooth promotion to production, track differences.
To migrate crm data and business logic from legacy system to
creatio with minimal downtime?
+
Plan extraction, mapping, pilot import/test, validate data, run
parallel systems during cut-over, communicate with users, backup data.
To monitor and handle performance issues when many automations
and workflows are active in creatio?
+
Use logs and analytics, identify heavy workflows, optimize
them, archive inactive items, scale resources, apply caching where possible.
To prepare for creatio crm implementation project?
+
Define business processes clearly, map data schema, prepare
migration plan, define roles/permissions, set up sandbox, schedule training, plan
rollout phases.
To set up role‑based dashboards and permission‑based record
visibility in creatio?
+
Define roles, assign permissions per module/entity, configure
dashboards per role to show only relevant data.
Training and onboarding support for new creatio users?
+
Use sandbox/demo environment, tutorials, documentation,
role‑based permissions, and phased rollout to help adoption.
Typical migration scenario when moving to creatio from legacy
crm?
+
Mapping legacy data fields to Creatio schema, cleaning data,
importing contacts/leads, configuring workflows, roles, custom fields, and training
users.
Typical steps for data migration into creatio from legacy
systems?
+
Data extraction → cleansing → mapping to Creatio schema →
import → validation → testing → go‑live.
Ui localization / multiple languages support in creatio?
+
Creatio supports multi‑language UI configuration to support
global teams and clients in different regions.
Use of version history / audit trail for compliance or
internal audits in creatio?
+
Track data changes, user actions, workflow executions to
provide transparency, accountability and support audits.
Use‑case: building a custom internal project management tool
inside creatio?
+
Define Projects, Tasks entities; set relationships; build task
assignment and tracking workflows, notifications, dashboards — custom app built on
low‑code platform.
Use‑case: building customer self‑service portal through
creatio?
+
Expose case/ticket submission, status tracking, knowledge base,
chat/email support — allowing customers to self-serve while CRM tracks interactions.
Use‑case: complaint resolution and feedback loop automation?
Use‑case: integrating creatio with erp for order-to-cash
process?
+
Sync customer/order data, invoices, inventory, payment status —
ensure full order lifecycle from lead to cash in coordinated systems.
Use‑case: integrating telephony or pbx into creatio for call
logging and click-to-call?
+
Use built‑in connectors or APIs to log calls, record
interaction history, trigger follow-up tasks — unified communication tracking.
:contentReference[oaicite:46]{index=46}
Use‑case: marketing nurture + re‑engagement workflows for
dormant clients?
+
Segment old clients, run email/social campaigns, schedule
follow-up tasks, track engagement, convert to opportunity if interest resumes.
Use‑case: marketing‑to‑sales handoff automation in creatio?
+
Marketing captures lead → nurtures → scores lead → when
qualified, auto‑assign to sales rep → create opportunity → notify sales team —
handoff automated.
Use‑case: multi‑team collaboration (sales + support + finance)
for order & invoice process in creatio?
+
Shared data (customer, orders, invoices), workflows for
approval, notifications across departments, status tracking — unified operations.
Use‑case: role-based dashboards and permissions for different
teams in creatio?
+
Sales dashboard for sales team; support dashboard for service
team; finance dashboard for billing — each with restricted access per role.
Use‑case: subscription‑based service lifecycle and renewal
tracking using creatio?
+
Contracts entity, renewal dates, reminder workflows, invoice
generation, customer communication — automate renewals and billing.
Use‑case: support ticket escalation and sla enforcement using
creatio service module?
+
Ticket created → auto‑assign → SLA timer & reminder → if SLA
breach, auto‑escalate or alert manager → resolution tracking.
Use‑case: vendor/supplier management (b2b) using creatio
custom entities?
Users/teams can create tasks, assign to others, track progress;
integrated with CRM workflow and customer data.
User activity monitoring and analytics in creatio for
management?
+
Track login history, record edits, workflow execution stats,
error rates — use dashboards to monitor productivity, compliance and usage patterns.
User adoption strategy when switching to creatio crm in a
company?
+
Communicate benefits, involve key users early, provide
training, create incentives, gather feedback and iterate workflows.
User roles and permission hierarchy in large organizations
using creatio?
+
Define roles (admin, sales rep, support agent, manager), assign
permissions by module/record/field to enforce security and privacy.
User training approach when adopting creatio in an
organization?
+
Role-based training, sandbox practice, documentation,
mentorship, phased rollout, and gathering user feedback to refine workflows.
Version control for customizations in creatio?
+
Track changes to custom apps/workflows, manage versions or
rollback if needed (depends on deployment/config).
Vertical‑specific (industry‑specific) workflow template in
creatio?
+
Pre-built process templates for industries (finance, telecom,
services) tailored to standard operations in that industry.
:contentReference[oaicite:41]{index=41}
Webhook or external trigger support in creatio (for
integrations)?
+
Creatio can integrate external triggers or webhooks to react to
external events (e.g. from other systems) to start workflows.
Workflow automation in creatio?
+
Automated workflows that trigger actions (notifications,
updates, assignments) based on events or conditions to reduce manual tasks.
:contentReference[oaicite:9]{index=9}
Workflow trigger’ in creatio?
+
An event or condition (e.g. lead status change, new ticket,
date/time event) that initiates an automated workflow.
:contentReference[oaicite:22]{index=22}
Workflow versioning or change history in creatio?
+
Changes to workflows can be versioned or logged to allow
rollback or audit of modifications.
Build a custom app (e.g. invoice management) in creatio
without coding?
+
Define entities (Invoice/Payment), fields, relationships, UI
layouts, workflows for invoice generation, approval, payment tracking — all via
low‑code tools.
Ensure data integrity and avoid duplicates in creatio when
many integrations feed data?
+
Use validation rules, deduplication logic, unique fields, audit
logs, regular data cleanup, and possibly API‑side checks.
Implement a custom reporting module combining data from sales,
service, and marketing in creatio?
+
Use cross‑entity queries or custom entities, aggregations,
define filters, build dashboards, schedule report generation and export.
Implement data backup & disaster recovery for a creatio
deployment?
+
Schedule regular backups, store off‑site, export critical data,
plan failover, document restoration process and test periodically.
Implement sla‑driven customer service workflow in creatio?
+
Design SLA rules, assign case priorities, set timers/triggers,
escalate cases on breach, send notifications, track resolution and compliance.
Integrate creatio with a third‑party billing or invoicing
system?
+
Use REST API or built‑in connectors, map invoice/order data,
design synchronization workflows, handle errors and updates.
Integrate creatio with an erp for order fulfillment?
+
Use Creatio APIs or connectors to sync orders, customer data,
statuses; set up workflows to push/pull data, manage order lifecycle and inventory.
Manage user roles and permissions for a global company using
creatio?
+
Define hierarchical roles, restrict data by region or business
unit, implement least‑privilege principle, audit permissions regularly.
Migrate 100,000 leads into creatio from legacy system?
+
Perform data cleaning, mapping, batch import via CSV/API,
validate imported data, test workflows, use sandbox first, then go live in phases.
Onboard non‑technical users to use creatio effectively?
+
Provide role‑based training, use step‑by‑step guides, give
sandbox access, deliver mentorship, keep UI simple, and provide support
documentation.
Plan disaster recovery and backup strategy for a global
creatio deployment?
You document crm customizations, workflows, data model for
future maintenance when using creatio?
+
Maintain documentation repositories, version control of
workflows, schema diagrams, change logs, and periodic reviews.
You ensure data consistency when multiple external systems
sync to creatio?
+
Implement validation rules, transactional updates, conflict
resolution logic, logging and monitoring for integration actions.
You ensure high availability for a critical creatio deployment
(global enterprise)?
+
Use cloud hosting with redundancy, regular backups, failover
setup, monitoring, scaling resources as needed, and disaster recovery planning.
You ensure performance and scalability when many workflows run
simultaneously in creatio?
+
Optimize workflows, avoid heavy loops, batch operations,
archive old data, monitor performance metrics, and scale resources as needed.
You handle data migration when business structure changes
(e.g. reorganization of departments) in creatio?
+
Map old data to new structure, update entities/relationships,
preserve history, test workflows, update permissions, inform users.
You handle gdpr / data‑privacy compliance when using creatio
for eu customers?
+
Implement consent tracking, data retention policies, role‑based
access, audit logs, anonymization, and document data handling procedures.
You handle multi‑tenant or multi‑subsidiary business using
single creatio instance?
+
Use role & access isolation, custom entities for subsidiaries,
partition data logically, implement permissions per tenant.
You handle subscription billing and renewals using creatio
plus external billing module?
+
Use workflows for renewal reminder, integrate with billing
system via API, create orders/invoices, track status — ensure data sync.
You handle version control and change management for workflows
and customisations in creatio?
+
Maintain version history, use sandbox for testing, document
changes, get approvals, deploy in stages, keep rollback plan.
You integrate external web forms/landing pages with creatio
lead capture?
+
Use REST API or webhooks, map form fields to Creatio entities,
validate input, create lead record automatically, trigger follow‑up workflows.
You manage data archive, cleanup of old records to maintain
performance in creatio?
+
Define retention policies, archive or delete old data, purge
logs, use separate storage/archival, monitor DB size/performance.
You manage security and access control for sensitive data
(e.g. customer financials) in creatio?
+
Use field‑level permissions, role‑based access, encryption (if
supported), audit logging, and restrict export options.
You merge records and manage duplicates in large datasets
inside creatio?
+
Use deduplication tools, merge function, validation rules,
manual review for ambiguous cases, and audit trail of merges.
You monitor system health, workflow execution metrics, and
usage analytics in creatio?
+
Use built-in analytics, custom dashboards, logs for
errors/performance, user activity reports, alerting on failures or heavy loads.
You onboard new teams or departments into existing creatio
instance with minimal disruption?
+
Use phased rollout, training sessions, permission management,
custom dashboards per department, and pilot user feedback.
You plan for system maintenance and upgrades in creatio used
heavily with custom workflows and integrations?
+
Schedule maintenance windows, backup data, test upgrades in
sandbox, update integrations, communicate with users, rollback plan if needed.
You support multi‑currency and global sales operations in
creatio?
+
Configure currency fields, exchange rates, localizations,
regional permissions, and adapt workflows per region.
DDD (Domain-Driven Design)
+
Advantage of ddd?
+
Aligns software design with business rules, improves
maintainability, and supports complex domains effectively.
Aggregate?
+
A cluster of related entities and value objects treated as a
single unit for consistency.
Bounded context?
+
A boundary defining where a specific domain model applies.
Prevents ambiguity in large systems with multiple models.
Ddd supports microservices?
+
By defining bounded contexts, each microservice can own its
domain model and database, reducing coupling.
Ddd?
+
DDD is an approach to software design focusing on core domain
logic, modeling real-world business processes, and aligning software structure with
business needs.
Diffbet ddd and traditional layered architecture?
+
DDD emphasizes domain and business logic first, while
traditional layers often prioritize technical layers like UI, DB, and service.
Domain event?
+
An event representing something significant that happens in the
domain, triggering reactions in other parts of the system.
Entity in ddd?
+
An object with a unique identity that persists over time, e.g.,
Customer with a unique ID.
Repository in ddd?
+
A pattern for persisting and retrieving aggregates while
abstracting data storage details.
Value object?
+
An object defined by attributes rather than identity. Immutable
and used to describe aspects of entities, e.g., Address.
Design Pattern
+
Adapter pattern example
+
Adapter converts one interface to another that clients expect.
Example: converting a legacy XML service to JSON API format.
Advantages of design patterns
+
Improve reusability, maintainability, readability, and
communication between developers.
Avoid design patterns
+
Avoid them when they add unnecessary complexity. Overuse may
make simple code overly abstract or harder to understand.
Behavioral patterns
+
Observer, Strategy, Iterator, Command, Mediator, Template
Method, Chain of Responsibility.
Bridge vs adapter pattern
+
Adapter works with existing code to make incompatible
interfaces work together, while Bridge separates abstraction from implementation to
scale systems.
Command pattern in ui
+
Command objects encapsulate UI actions like Copy, Paste, Undo.
They can be queued, logged, or undone.
Adding features like encryption or compression to a file stream
dynamically without modifying the original class.
Dependency inversion principle
+
High-level modules should depend on abstractions, not concrete
classes. DI containers and patterns like Factory and Strategy help achieve loose
coupling.
Design patterns are used in java’s jdk?
+
JDK uses several patterns such as Singleton (Runtime), Factory
(Calendar.getInstance()), Strategy (Comparator), Iterator (Iterator interface), and
Observer (Listener model in Swing). These patterns solve reusable design challenges
in library features.
Design patterns vs algorithms
+
Algorithms solve computational tasks while design patterns
solve architectural design problems. Algorithms have fixed steps; patterns are
flexible templates.
Design principles vs patterns
+
Principles guide how to write good code (SOLID), while patterns
provide reusable proven solutions.
Factory method pattern example
+
Factory Method creates objects without exposing creation logic.
Example: Calendar.getInstance() or creating different document types based on input.
Gang of four?
+
Gang of Four (GoF) refers to four authors who wrote the book
"Design Patterns: Elements of Reusable Object-Oriented Software" in 1994. They
introduced 23 standard design patterns widely used in software development.
Inversion of control?
+
IoC means the framework controls object creation and lifecycle
rather than the programmer. Commonly implemented via Dependency Injection.
Observer pattern
+
Observer allows objects (observers) to get notified
automatically when the subject changes state. Used in event-driven systems like Java
Swing listeners.
Open/closed principle
+
Classes should be open for extension but closed for
modification. Design patterns like Strategy, Decorator, and Template enforce this
principle.
Patterns help in refactoring
+
Patterns reduce duplication, simplify logic, improve
scalability, and make code modular when refactoring legacy systems.
Prevent over-engineering
+
Use patterns only when they solve a real problem. Follow YAGNI
("You Aren’t Gonna Need It") and refactor gradually.
Purpose of uml in design patterns
+
UML diagrams visualize relationships, responsibilities, and
structure of design patterns, aiding understanding and implementation.
Real-world singleton example
+
java.lang.Runtime and logging frameworks like Log4j use
Singleton to manage shared resources across the application.
Role of design patterns
+
They provide reusable solutions to common software problems and
promote flexibility, maintainability, and scalability.
Scenario: command vs strategy pattern
+
Command is better when you need undo/redo, queueing actions, or
macro commands in UI. Strategy is better when switching between interchangeable
algorithms.
Single responsibility principle
+
SRP states that a class should have only one reason to change.
It improves maintainability, readability, and testing in software design.
Singleton pattern & when to use?
+
Singleton ensures only one instance of a class exists and
provides a global point of access. Used in logging, configuration settings, caching,
or database connection management.
Strategy pattern example
+
Sorting algorithms (QuickSort, MergeSort, BubbleSort) can be
swapped at runtime based on input size or performance needs.
Linux is the foundation of DevOps operations - it's like a
Swiss Army knife for servers. These commands help you navigate systems, manage
files, configure permissions, and automate tasks in terminal environments. 1. pwd -
Print the current working directory. 2. ls - List files and directories. 3. cd -
Change directory. 4. touch - Create an empty file. 5. mkdir - Create a new
directory. 6. rm - Remove files or directories. 7. rmdir - Remove empty directories.
8. cp - Copy files or directories. 9. mv - Move or rename files and directories. 10.
cat - Display the content of a file. 11. echo - Display a line of text. 12. clear -
Clear the terminal screen.
Intermediate Linux Commands
+
13. chmod - Change file permissions. 14. chown - Change file
ownership. 15. find - Search for files and directories. 16. grep - Search for text
in a file. 17. wc - Count lines, words, and characters in a file. 18. head - Display
the first few lines of a file. 19. tail - Display the last few lines of a file. 20.
sort - Sort the contents of a file. 21. uniq - Remove duplicate lines from a file.
22. diff - Compare two files line by line. 23. tar - Archive files into a tarball.
24. zip/unzip - Compress and extract ZIP files. 25. df - Display disk space usage.
26. du - Display directory size. 27. top - Monitor system processes in real time.
28. ps - Display active processes. 29. kill - Terminate a process by its PID. 30.
ping - Check network connectivity. 31. wget - Download files from the internet. 32.
curl - Transfer data from or to a server. 33. scp - Securely copy files between
systems. 34. rsync - Synchronize files and directories.
Advanced Linux Commands
+
35. awk - Text processing and pattern scanning. 36. sed -
Stream editor for filtering and transforming text. 37. cut - Remove sections from
each line of a file. 38. tr - Translate or delete characters. 39. xargs - Build and
execute command lines from standard input. 40. ln - Create symbolic or hard links.
41. df -h - Display disk usage in human-readable format. 42. free - Display memory
usage. 43. iostat - Display CPU and I/O statistics. 44. netstat - Network statistics
(use ss as modern alternative). 45. ifconfig/ip - Configure network interfaces (use
ip as modern alternative). 46. iptables - Configure firewall rules. 47. systemctl -
Control the systemd system and service manager. 48. journalctl - View system logs.
49. crontab - Schedule recurring tasks. 50. at - Schedule tasks for a specific time.
51. uptime - Display system uptime. 52. whoami - Display the current user. 53. users
- List all users currently logged in. 54. hostname - Display or set the system
hostname. 55. env - Display environment variables. 56. export - Set environment
variables.
Networking Commands
+
57. ip addr - Display or configure IP addresses. 58. ip route -
Show or manipulate routing tables. 59. traceroute - Trace the route packets take to
a host. 60. nslookup - Query DNS records. 61. dig - Query DNS servers. 62. ssh -
Connect to a remote server via SSH. 63. ftp - Transfer files using the FTP protocol.
64. nmap - Network scanning and discovery. 65. telnet - Communicate with remote
hosts. 66. netcat (nc) - Read/write data over networks.
File Management and Search
+
67. locate - Find files quickly using a database. 68. stat -
Display detailed information about a file. 69. tree - Display directories as a tree.
70. file - Determine a file’s type. 71. basename - Extract the filename from a path.
72. dirname - Extract the directory part of a path.
System Monitoring
+
73. vmstat - Display virtual memory statistics. 74. htop -
Interactive process viewer (alternative to top). 75. lsof - List open files. 76.
dmesg - Print kernel ring buffer messages. 77. uptime - Show how long the system has
been running. 78. iotop - Display real-time disk I/O by processes.
83. mount/umount - Mount or unmount filesystems. 84. fsck -
Check and repair filesystems. 85. mkfs - Create a new filesystem. 86. blkid -
Display information about block devices. 87. lsblk - List information about block
devices. 88. parted - Manage partitions interactively.
Scripting and Automation
+
89. bash - Command interpreter and scripting shell. 90. sh -
Legacy shell interpreter. 91. cron - Automate tasks. 92. alias - Create shortcuts
for commands. 93. source - Execute commands from a file in the current shell.
Development and Debugging
+
94. gcc - Compile C programs. 95. make - Build and manage
projects. 96. strace - Trace system calls and signals. 97. gdb - Debug programs. 98.
git - Version control system. 99. vim/nano - Text editors for scripting and editing.
Other Useful Commands
+
100. uptime - Display system uptime. 101. date - Display or set
the system date and time. 102. cal - Display a calendar. 103. man - Display the
manual for a command. 104. history - Show previously executed commands. 105. alias -
Create custom shortcuts for commands.
Basic Git Commands
+
Git is your code time machine. It tracks every change, enables
team collaboration without conflicts, and lets you undo mistakes. These commands
help manage source code versions like a professional developer. 1. git init
Initializes a new Git repository in the current directory. Example: git init 2. git
clone Copies a remote repository to the local machine. Example: git clone
https://github.com/user/repo.git 3. git status Displays the state of the working
directory and staging area. Example: git status 4. git add Adds changes to the
staging area. Example: git add file.txt 5. git commit Records changes to the
repository. Example: git commit -m "Initial commit" 6. git config Configures user
settings, such as name and email. Example: git config --global user.name "Your Name"
7. git log Shows the commit history. Example: git log 8. git show Displays detailed
information about a specific commit. Example: git show 9. git diff Shows changes
between commits, the working directory, and the staging area. Example: git diff 10.
git reset Unstages changes or resets commits. Example: git reset HEAD file.txt
Branching and Merging
+
11. git branch Lists branches or creates a new branch. Example:
git branch feature-branch 12. git checkout Switches between branches or restores
files. Example: git checkout feature-branch 13. git switch Switches branches (modern
alternative to git checkout). Example: git switch feature-branch 14. git merge
Combines changes from one branch into another. Example: git merge feature-branch 15.
git rebase Moves or combines commits from one branch onto another. Example: git
rebase main 16. git cherry-pick Applies specific commits from one branch to another.
Example: git cherry-pick
Remote Repositories
+
17. git remote Manages remote repository connections. Example:
git remote add origin https://github.com/user/repo.git 18. git push Sends changes to
a remote repository. Example: git push origin main 19. git pull Fetches and merges
changes from a remote repository. Example: git pull origin main 20. git fetch
Downloads changes from a remote repository without merging. Example: git fetch
origin 21. git remote -v Lists the URLs of remote repositories. Example: git remote
-v
Stashing and Cleaning
+
22. git stash Temporarily saves changes not yet committed.
Example: git stash 23. git stash pop Applies stashed changes and removes them from
the stash list. Example: git stash pop 24. git stash list Lists all stashes.
Example: git stash list 25. git clean Removes untracked files from the working
directory. Example: git clean -f
Tagging
+
26. git tag Creates a tag for a specific commit. Example: git
tag -a v1.0 -m "Version 1.0" 27. git tag -d Deletes a tag. Example: git tag -d v1.0
28. git push --tags Pushes tags to a remote repository. Example: git push origin
--tags
Advanced Commands
+
29. git bisect Finds the commit that introduced a bug. Example:
git bisect start 30. git blame Shows which commit and author modified each line of a
file. Example: git blame file.txt 31. git reflog Shows a log of changes to the tip
of branches. Example: git reflog 32. git submodule Manages external repositories as
submodules. Example: git submodule add https://github.com/user/repo.git 33. git
archive Creates an archive of the repository files. Example: git archive
--format=zip HEAD > archive.zip 34. git gc Cleans up unnecessary files and optimizes
the repository. Example: git gc
GitHub-Specific Commands
+
35. gh auth login Logs into GitHub via the command line.
Example: gh auth login 36. gh repo clone Clones a GitHub repository. Example: gh
repo clone user/repo 37. gh issue list Lists issues in a GitHub repository. Example:
gh issue list 38. gh pr create Creates a pull request on GitHub. Example: gh pr
create --title "New Feature" --body "Description of the feature" 39. gh repo create
Creates a new GitHub repository. Example: gh repo create my-repo
Basic Docker Commands -
+
Docker packages applications into portable containers - like
shipping containers for software. These commands help build, ship, and run
applications consistently across any environment. 1. docker --version Displays the
installed Docker version. Example: docker --version 2. docker info Shows system-wide
information about Docker, such as the number of containers and images. Example:
docker info 3. docker pull Downloads an image from a Docker registry (default:
Docker Hub). Example: docker pull ubuntu:latest 4. docker images Lists all
downloaded images. Example: docker images 5. docker run Creates and starts a new
container from an image. Example: docker run -it ubuntu bash 6. docker ps Lists
running containers. Example: docker ps 7. docker ps -a Lists all containers,
including stopped ones. Example: docker ps -a 8. docker stop Stops a running
container. Example: docker stop container_name 9. docker start Starts a stopped
container. Example: docker start container_name 10. docker rm Removes a container.
Example: docker rm container_name 11. docker rmi Removes an image. Example: docker
rmi image_name 12. docker exec Runs a command inside a running container. Example:
docker exec -it container_name bash
Intermediate Docker Commands
+
13. docker build Builds an image from a Dockerfile. Example:
docker build -t my_image . 14. docker commit Creates a new image from a container’s
changes. Example: docker commit container_name my_image:tag 15. docker logs Fetches
logs from a container. Example: docker logs container_name 16. docker inspect
Returns detailed information about an object (container or image). Example: docker
inspect container_name 17. docker stats Displays live resource usage statistics of
running containers. Example: docker stats 18. docker cp Copies files between a
container and the host. Example: docker cp container_name:/path/in/container
/path/on/host 19. docker rename Renames a container. Example: docker rename old_name
new_name 20. docker network ls Lists all Docker networks. Example: docker network ls
21. docker network create Creates a new Docker network. Example: docker network
create my_network 22. docker network inspect Shows details about a Docker network.
Example: docker network inspect my_network 23. docker network connect Connects a
container to a network. Example: docker network connect my_network container_name
24. docker volume ls Lists all Docker volumes. Example: docker volume ls 25. docker
volume create Creates a new Docker volume. Example: docker volume create my_volume
26. docker volume inspect Provides details about a volume. Example: docker volume
inspect my_volume 27. docker volume rm Removes a Docker volume. Example: docker
volume rm my_volume
Advanced Docker Commands
+
28. docker-compose up Starts services defined in a
docker-compose.yml file. Example: docker-compose up 29. docker-compose down Stops
and removes services defined in a docker-compose.yml file. Example: docker-compose
down 30. docker-compose logs Displays logs for services managed by Docker Compose.
Example: docker-compose logs 31. docker-compose exec Runs a command in a service’s
container. Example: docker-compose exec service_name bash 32. docker save Exports an
image to a tar file. Example: docker save -o my_image.tar my_image:tag 33. docker
load Imports an image from a tar file. Example: docker load < my_image.tar 34.
docker export Exports a container’s filesystem as a tar file. Example: docker
export container_name> container.tar 35. docker import Creates an image from an
exported container. Example: docker import container.tar my_new_image 36. docker
system df Displays disk usage by Docker objects. Example: docker system df 37.
docker system prune Cleans up unused Docker resources (images, containers,
volumes, networks). Example: docker system prune 38. docker tag Assigns a new
tag to an image. Example: docker tag old_image_name new_image_name 39. docker
push Uploads an image to a Docker registry. Example: docker push my_image:tag
40. docker login Logs into a Docker registry. Example: docker login 41. docker
logout Logs out of a Docker registry. Example: docker logout 42. docker swarm
init Initializes a Docker Swarm mode cluster. Example: docker swarm init 43.
docker service create Creates a new service in Swarm mode. Example: docker
service create --name my_service nginx 44. docker stack deploy Deploys a stack
using a Compose file in Swarm mode. Example: docker stack deploy -c
docker-compose.yml my_stack 45. docker stack rm Removes a stack in Swarm mode.
Example: docker stack rm my_stack 46. docker checkpoint create Creates a
checkpoint for a container. Example: docker checkpoint create container_name
checkpoint_name 47. docker checkpoint ls Lists checkpoints for a container.
Example: docker checkpoint ls container_name 48. docker checkpoint rm Removes a
checkpoint. Example: docker checkpoint rm container_name checkpoint_name
Basic Kubernetes Commands -
+
Kubernetes is the conductor of your container orchestra. It
automates deployment, scaling, and management of containerized applications across
server clusters. 1. kubectl version Displays the Kubernetes client and server
version. Example: kubectl version --short 2. kubectl cluster-info Shows information
about the Kubernetes cluster. Example: kubectl cluster-info 3. kubectl get nodes
Lists all nodes in the cluster. Example: kubectl get nodes 4. kubectl get pods Lists
all pods in the default namespace. Example: kubectl get pods 5. kubectl get services
Lists all services in the default namespace. Example: kubectl get services 6.
kubectl get namespaces Lists all namespaces in the cluster. Example: kubectl get
namespaces 7. kubectl describe pod Shows detailed information about a specific pod.
Example: kubectl describe pod pod-name 8. kubectl logs Displays logs for a specific
pod. Example: kubectl logs pod-name 9. kubectl create namespace Creates a new
namespace. Example: kubectl create namespace my-namespace 10. kubectl delete pod
Deletes a specific pod. Example: kubectl delete pod pod-name
Intermediate Kubernetes Commands
+
11. kubectl apply Applies changes defined in a YAML file.
Example: kubectl apply -f deployment.yaml 12. kubectl delete Deletes resources
defined in a YAML file. Example: kubectl delete -f deployment.yaml 13. kubectl scale
Scales a deployment to the desired number of replicas. Example: kubectl scale
deployment my-deployment --replicas=3 14. kubectl expose Exposes a pod or deployment
as a service. Example: kubectl expose deployment my-deployment --type=LoadBalancer
--port=80 15. kubectl exec Executes a command in a running pod. Example: kubectl
exec -it pod-name -- /bin/bash 16. kubectl port-forward Forwards a local port to a
port in a pod. Example: kubectl port-forward pod-name 8080:80 17. kubectl get
configmaps Lists all ConfigMaps in the namespace. Example: kubectl get configmaps
18. kubectl get secrets Lists all Secrets in the namespace. Example: kubectl get
secrets 19. kubectl edit Edits a resource definition directly in the editor.
Example: kubectl edit deployment my-deployment 20. kubectl rollout status Displays
the status of a deployment rollout. Example: kubectl rollout status
deployment/my-deployment
Advanced Kubernetes Commands
+
21. kubectl rollout undo Rolls back a deployment to a previous
revision. Example: kubectl rollout undo deployment/my-deployment 22. kubectl top
nodes Shows resource usage for nodes. Example: kubectl top nodes 23. kubectl top
pods Displays resource usage for pods. Example: kubectl top pods 24. kubectl cordon
Marks a node as unschedulable. Example: kubectl cordon node-name 25. kubectl
uncordon Marks a node as schedulable. Example: kubectl uncordon node-name 26.
kubectl drain Safely evicts all pods from a node. Example: kubectl drain node-name
--ignore-daemonsets 27. kubectl taint Adds a taint to a node to control pod
placement. Example: kubectl taint nodes node-name key=value:NoSchedule 28. kubectl
get events Lists all events in the cluster. Example: kubectl get events 29. kubectl
apply -k Applies resources from a kustomization directory. Example: kubectl apply -k
./kustomization-dir/ 30. kubectl config view Displays the kubeconfig file. Example:
kubectl config view 31. kubectl config use-context Switches the active context in
kubeconfig. Example: kubectl config use-context my-cluster 32. kubectl debug Creates
a debugging session for a pod. Example: kubectl debug pod-name 33. kubectl delete
namespace Deletes a namespace and its resources. Example: kubectl delete namespace
my-namespace 34. kubectl patch Updates a resource using a patch. Example: kubectl
patch deployment my-deployment -p '{"spec": {"replicas": 2}}' 35. kubectl rollout
history Shows the rollout history of a deployment. Example: kubectl rollout history
deployment my-deployment 36. kubectl autoscale Automatically scales a deployment
based on resource usage. Example: kubectl autoscale deployment my-deployment
--cpu-percent=50 --min=1 --max=10 37. kubectl label Adds or modifies a label on a
resource. Example: kubectl label pod pod-name environment=production 38. kubectl
annotate Adds or modifies an annotation on a resource. Example: kubectl annotate pod
pod-name description="My app pod" 39. kubectl delete pv Deletes a PersistentVolume
(PV). Example: kubectl delete pv my-pv 40. kubectl get ingress Lists all Ingress
resources in the namespace. Example: kubectl get ingress 41. kubectl create
configmap Creates a ConfigMap from a file or literal values. Example: kubectl create
configmap my-config --from-literal=key1=value1 42. kubectl create secret Creates a
Secret from a file or literal values. Example: kubectl create secret generic
my-secret --from-literal=password=myPassword 43. kubectl api-resources Lists all
available API resources in the cluster. Example: kubectl api-resources 44. kubectl
api-versions Lists all API versions supported by the cluster. Example: kubectl
api-versions 45. kubectl get crds Lists all CustomResourceDefinitions (CRDs).
Example: kubectl get crds
Basic Helm Commands -
+
Helm is the app store for Kubernetes. It simplifies installing
and managing complex applications using pre-packaged "charts" - think of it like
apt-get for Kubernetes. 1. helm help Displays help for the Helm CLI or a specific
command. Example: helm help 2. helm version Shows the Helm client and server
version. Example: helm version 3. helm repo add Adds a new chart repository.
Example: helm repo add stable https://charts.helm.sh/stable 4. helm repo update
Updates all Helm chart repositories to the latest version. Example: helm repo update
5. helm repo list Lists all the repositories added to Helm. Example: helm repo list
6. helm search hub Searches for charts on Helm Hub. Example: helm search hub nginx
7. helm search repo Searches for charts in the repositories. Example: helm search
repo stable/nginx 8. helm show chart Displays information about a chart, including
metadata and dependencies. Example: helm show chart stable/nginx
Installing and Upgrading Charts
+
9. helm install Installs a chart into a Kubernetes cluster.
Example: helm install my-release stable/nginx 10. helm upgrade Upgrades an existing
release with a new version of the chart. Example: helm upgrade my-release
stable/nginx 11. helm upgrade --install Installs a chart if it isn’t installed or
upgrades it if it exists. Example: helm upgrade --install my-release stable/nginx
12. helm uninstall Uninstalls a release. Example: helm uninstall my-release 13. helm
list Lists all the releases installed on the Kubernetes cluster. Example: helm list
14. helm status Displays the status of a release. Example: helm status my-release
Working with Helm Charts
+
15. helm create Creates a new Helm chart in a specified
directory. Example: helm create my-chart 16. helm lint Lints a chart to check for
common errors. Example: helm lint ./my-chart 17. helm package Packages a chart into
a .tgz file. Example: helm package ./my-chart 18. helm template Renders the
Kubernetes YAML files from a chart without installing it. Example: helm template
my-release ./my-chart 19. helm dependency update Updates the dependencies in the
Chart.yaml file. Example: helm dependency update ./my-chart
Advanced Helm Commands
+
20. helm rollback Rolls back a release to a previous version.
Example: helm rollback my-release 1 21. helm history Displays the history of a
release. Example: helm history my-release 22. helm get all Gets all information
(including values and templates) for a release. Example: helm get all my-release 23.
helm get values Displays the values used in a release. Example: helm get values
my-release 24. helm test Runs tests defined in a chart. Example: helm test
my-release
Helm Chart Repositories
+
25. helm repo remove Removes a chart repository. Example: helm
repo remove stable 26. helm repo update Updates the local cache of chart
repositories. Example: helm repo update 27. helm repo index Creates or updates the
index file for a chart repository. Example: helm repo index ./charts
Helm Values and Customization
+
28. helm install --values Installs a chart with custom values.
Example: helm install my-release stable/nginx --values values.yaml 29. helm upgrade
--values Upgrades a release with custom values. Example: helm upgrade my-release
stable/nginx --values values.yaml 30. helm install --set Installs a chart with a
custom value set directly in the command. Example: helm install my-release
stable/nginx --set replicaCount=3 31. helm upgrade --set Upgrades a release with a
custom value set. Example: helm upgrade my-release stable/nginx --set replicaCount=5
32. helm uninstall --purge Removes a release and deletes associated resources,
including the release history. Example: helm uninstall my-release --purge
Helm Template and Debugging
+
33. helm template --debug Renders Kubernetes manifests and
includes debug output. Example: helm template my-release ./my-chart --debug 34. helm
install --dry-run Simulates the installation process to show what will happen
without actually installing. Example: helm install my-release stable/nginx --dry-run
35. helm upgrade --dry-run Simulates an upgrade process without actually applying
it. Example: helm upgrade my-release stable/nginx --dry-run
Helm and Kubernetes Integration
+
36. helm list --namespace Lists releases in a specific
Kubernetes namespace. Example: helm list --namespace kube-system 37. helm uninstall
--namespace Uninstalls a release from a specific namespace. Example: helm uninstall
my-release --namespace kube-system 38. helm install --namespace Installs a chart
into a specific namespace. Example: helm install my-release stable/nginx --namespace
mynamespace 39. helm upgrade --namespace Upgrades a release in a specific namespace.
Example: helm upgrade my-release stable/nginx --namespace mynamespace
Helm Chart Development
+
40. helm package --sign Packages a chart and signs it using a
GPG key. Example: helm package ./my-chart --sign --key my-key-id 41. helm create
--starter Creates a new Helm chart based on a starter template. Example: helm create
--starter https://github.com/helm/charts.git 42. helm push Pushes a chart to a Helm
chart repository. Example: helm push ./my-chart my-repo
Helm with Kubernetes CLI
+
43. helm list -n Lists releases in a specific Kubernetes
namespace. Example: helm list -n kube-system 44. helm install --kube-context
Installs a chart to a Kubernetes cluster defined in a specific kubeconfig context.
Example: helm install my-release stable/nginx --kube-context my-cluster 45. helm
upgrade --kube-context Upgrades a release in a specific Kubernetes context. Example:
helm upgrade my-release stable/nginx --kube-context my-cluster
Helm Chart Dependencies
+
46. helm dependency build Builds dependencies for a Helm chart.
Example: helm dependency build ./my-chart 47. helm dependency list Lists all
dependencies for a chart. Example: helm dependency list ./my-chart
Helm History and Rollbacks
+
48. helm rollback --recreate-pods Rolls back to a previous
version and recreates pods. Example: helm rollback my-release 2 --recreate-pods 49.
helm history --max Limits the number of versions shown in the release history.
Example: helm history my-release --max 5
Basic Terraform Commands -
+
Terraform lets you build cloud infrastructure with code.
Instead of clicking buttons in AWS/GCP/Azure consoles, you define servers and
services in configuration files. 50. terraform --help = Displays general help for
Terraform CLI commands. 51. terraform init = Initializes the working directory
containing Terraform configuration files. It downloads the necessary provider
plugins. 52. terraform validate = Validates the Terraform configuration files for
syntax errors or issues. 53. terraform plan - Creates an execution plan, showing
what actions Terraform will perform to make the infrastructure match the desired
configuration. 54. terraform apply = Applies the changes required to reach the
desired state of the configuration. It will prompt for approval before making
changes. 55. terraform show = Displays the Terraform state or a plan in a
human-readable format. 56. terraform output = Displays the output values defined in
the Terraform configuration after an apply. 57. terraform destroy = Destroys the
infrastructure defined in the Terraform configuration. It prompts for confirmation
before destroying resources. 58. terraform refresh = Updates the state file with the
real infrastructure's current state without applying changes. 59. terraform taint =
Marks a resource for recreation on the next apply. Useful for forcing a resource to
be recreated even if it hasn't been changed. 60. terraform untaint = Removes the
"tainted" status from a resource. 61. terraform state = Manages Terraform state
files, such as moving resources between modules or manually 62. terraform import =
Imports existing infrastructure into Terraform management. 63. terraform graph =
Generates a graphical representation of Terraform's resources and their
relationships. 64. terraform providers = Lists the providers available for the
current Terraform configuration. 65. terraform state list = Lists all resources
tracked in the Terraform state file. 66. terraform backend = Configures the backend
for storing Terraform state remotely (e.g., in S3, Azure Blob Storage, etc.). 67.
terraform state mv = Moves an item in the state from one location to another. 68.
terraform state rm = Removes an item from the Terraform state file. 69. terraform
workspace = Manages Terraform workspaces, which allow for creating separate
environments within a single configuration. 70. terraform workspace new = Creates a
new workspace. 71. terraform module = Manages and updates Terraform modules, which
are reusable configurations. 72. terraform init -get-plugins=true = Ensures that
required plugins are fetched and available for modules. 73. TF_LOG = Sets the
logging level for Terraform debug output (e.g., TRACE, DEBUG, INFO, WARN, ERROR).
74. TF_LOG_PATH = Directs Terraform logs to a specified file. 75. terraform login =
Logs into Terraform Cloud or Terraform Enterprise for managing remote backends and
workspaces. 76. terraform remote = Manages remote backends and remote state storage
for Terraform configurations. terraform push = Pushes Terraform modules to a remote
module registry.
DevOps Shack 200 Jenkins Scenario Based Question and Answer
+
Design a Jenkins setup for a large-scaleenterpris e
application with multiple teams
+
Design a master-agent architecture where the master
handlesscheduling and orchestrating jobs, and agents execute jobs. Use dis tributed
builds by configuring Jenkins agents ondifferent machines or containers. Implement
folder-based multi-tenancy to is olate pipelines foreach team. Secure the Jenkins
setup using role-based access control(RBAC). Example: Team A has access to Folder A
with restrictedpipeline vis ibility, while the master node ensures no resource
contention.
Scale Jenkins to handle high build loads
+
Use Kubernetes-based Jenkins agents that scale dynamicallybased
on workload. Implement build queue monitoring and optimize resourceallocation by
offloading non-critical jobs to low-priority nodes. Use Jenkins Operations Center
(CloudBees CI) for centralizedmanagement of multiple Jenkins instances.
Manage plugins in a Jenkins environment to ensure stability
+
Maintain a lis t of approved plugins after testingcompatibility
with the Jenkins version. Regularly update plugins in a staging environment
beforerolling them into production. Example: While upgrading the Git plugin, test it
with yourpipelines in staging to ensure no dis ruption.
Design a Jenkins pipeline to support multipleenvironments
(e.g., Dev, QA, Prod)
+
Use parameterized pipelines where
environment-specificconfigurations (e.g., URLs, credentials) are passed as
parameters. Implement environment-specific stages or branch-specificpipelines.
Example: A pipeline that promotes a build from Dev to QA andthen to Prod using
approval gates between stages.
Handle dynamic branch creation in Jenkins pipelines
+
Use multibranch pipelines that automatically detect newbranches
in a repository and create pipelines for them. Configure the Jenkinsfile in each
branch to define itspipeline behavior.
Ensure pipeline resilience in case of intermittent failures
+
Use retry blocks in declarative orscripted pipelines to retry
failed stages. Example: Retrying a flaky test stage three times withexponential
backoff. Implement conditional steps using catchError to handle failures gracefully.
Secure sensitive credentials in Jenkinspipelines
+
Use the Jenkins Credentials plugin to store secrets securely.
Access credentials using environment variables or bindings inthe pipeline. Example:
Fetch an API key stored in Jenkins credentials using withCredentials in a scripted
pipeline.
Enforce role-based access control(RBAC) in Jenkins
+
Use the Role-Based Authorization Strategy plugin. Define roles
like Admin, Developer, and Viewer, and assignpermis sions for jobs, folders, and
builds accordingly.
Integrate Jenkins with Docker for buildingand deploying
applications
+
Use the Docker plugin or Docker Pipeline plugin. Example: Build
a Docker image in the pipeline using docker.build and push it to a container regis
try. Run tests in ephemeral Docker containers for consis tent testenvironments.
Integrate Jenkins with a Kubernetes cluster for deployments
+
Use the Kubernetes plugin or kubectl commands in the pipeline.
Example: Use a Kubernetes pod template with custom containersfor builds, then deploy
applications using kubectl apply .
Reduce the build time of a Jenkinsjob
+
Use parallel stages to execute independent taskssimultaneously.
Example: Parallelize static code analysis , unit tests, andintegration tests. Use
build caching mechanis ms like Docker layer caching ordependency caching.
Optimize Jenkins for CI/CD pipelines with heavy test loads
+
Split tests into smaller batches and run them in parallel. Use
sharding for dis tributed test execution across multipleagents. Example: Divide a
10,000-test suite into 10 shards anddis tribute them across agents.
If a Jenkins job hangsindefinitely
+
Check the Jenkins build logs for deadlocks or
resourcecontention. Restart the agent where the build is stuck, if needed. Example:
A job stuck in docker build could indicate Docker daemon is sues; restart the Docker
service.
Troubleshoot a Jenkins job that keeps failing at the same step
+
Analyze the console output to identify the error message. Check
for environmental is sues like mis sing dependencies orincorrect permis sions.
Example: A Maven build failing due to repository connectivitymight require checking
proxy configurations.
Implement manual approval gates in Jenkinspipelines
+
Use the input step in a declarativepipeline. Example: Add an
approval step before deploying to production.Only after manual confirmation does the
pipeline proceed.
Handle blue-green deployments in Jenkins
+
Create separate pipelines for blue and green environments.
Route traffic to the new environment after successfuldeployment and health checks.
Example: Use AWS Route53 or Kubernetes Ingress to switchtraffic seamlessly.
Monitor Jenkins build trends
+
Use the Build His tory and Build Monitor plugins. Example: Vis
ualize pass/fail trends over time to identifyflaky tests.
Notify teams about build failures
+
Use the Email Extension or Slack Notification plugins. Example:
Configure a Slack webhook to notify the #build-alerts channel upon failure.
Manage monorepos in Jenkinspipelines
+
Use sparse checkouts to fetch only the required directories.
Example: Trigger pipelines based on changes in specificsubdirectories using the dir
parameter in Git.
Handle merge conflicts in a Jenkins pipeline
+
Use Git pre-merge hooks or resolve conflicts locally and
pushthe updated code. Example: A pipeline can fetch both source and target
branches,merge them in a temporary branch, and check for conflicts.
Trigger a Jenkins pipeline from anotherpipeline
+
Use the build step in a scripted or declarativepipeline to
trigger another pipeline. Example: Pipeline A builds the application, and Pipeline B
deploysit. Pipeline A calls Pipeline B using build(job:'Pipeline-B', parameters:
[string(name: 'version',value: '1.0')]) .
Handle shared libraries in Jenkins pipelines
+
Use the Global Shared Libraries feature inJenkins. Example:
Create reusable Groovy functions for common tasks (e.g.,linting, packaging) and call
them in pipelines using @Library('my-library') .
Implement conditional logic in Jenkins pipelines
+
Use when in declarative pipelines or if statements in scripted
pipelines. Example: Skip deployment if the branch is not main using when { branch
'main' } .
Handle job failures in a Jenkins pipeline
+
Use the catchError block to handle errorsgracefully. Example:
catchError { sh 'some-failing-command' } echo 'Handled the failure and proceeding.'
If a Jenkins master node crashes
+
Restore the master node from backups. Use Jenkins’ thinBackup
or a similar plugin for automatedbackups. Example: After restoration, ensure the
plugins and configuration aresynchronized.
Restart a failed Jenkins pipeline from a specific stage
+
Enable the Restart from Stage feature in theJenkins declarative
pipeline. Example: If the Deploy stage fails, restart thepipeline from that stage
without re- executing previous stages.
Integrate Jenkins with SonarQube for code qualityanalysis
+
Use the SonarQube Scanner plugin. Example: Add a stage in the
pipeline to run sonar-scanner and publis h results to the SonarQubeserver.
Enforce code coverage thresholds in Jenkins pipelines
+
Use tools like JaCoCo or Cobertura and configure the build to
fail ifthresholds are not met. Example: jacoco(execPattern: '**/jacoco.exec',
minimumBranchCoverage: '80')
Implement parallelis m in Jenkinspipelines
+
Use the parallel directive in declarativepipelines or parallel
block in scripted pipelines. Example: Run unit tests , integration tests , and
linting inparallel stages.
Optimize resource utilization in Jenkins
+
Use lock to manage resource contention. Example: Limit
concurrent jobs accessing a shared environment using lock('resourceName') .
Run Jenkins jobs in a Docker container
+
Use the docker block in declarativepipelines. Example: agent {
docker { image 'node:14' } }
Ensure consis tent environments for Jenkins builds
+
Use Docker images to define build environments. Example: Use a
prebuilt image with all dependencies pre-installed forfaster builds.
Integrate Jenkins with AWS for CI/CD
+
Use the AWS CLI or AWS-specific Jenkins plugins. Example:
Deploy an application to S3 using aws s3 cp commands in the pipeline.
Configure Jenkins to deploy to Azure Kubernetes Service (AKS)
+
Use kubectl commands with AKS credentialsstored in Jenkins
credentials. Example: Deploy manifests using sh 'kubectl apply-f k8s.yaml' .
Trigger a Jenkins job when a file changes inGit
+
Use GitHub or Bitbucket webhooks configured with the
Jenkinsjob. Example: A webhook triggers the job only for changes in a specificfolder
by setting path filters.
Schedule periodic builds in Jenkins
+
Use the Build periodically option or cron syntax in pipeline
scripts. Example: Schedule a nightly build using H 0 * ** .
Audit build logs and job execution inJenkins
+
Enable the Audit Trail plugin to track user actions. Example:
View changes made to jobs, builds, and plugins.
Implement compliance checks in Jenkins pipelines
+
Integrate with tools like OpenSCAP or custom scripts for
compliancevalidation. Example: Validate infrastructure as code (IaC) templates
forcompliance before deployment.
Manage build artifacts in Jenkins
+
Use the Archive the artifacts post-buildstep. Example: Store
JAR files and logs for future reference using archiveArtifacts artifacts:
'build/*.jar' .
Publis h artifacts to a repository like Nexus or Artifactory
+
Use Maven/Gradle plugins or REST APis for publis hing. Example:
Push aJAR file to Nexus with: sh 'mvn deploy'
Notify a team about pipeline status
+
Use Slack or Email plugins for notifications. Example: Notify
Slackon success or failure with: slackSend channel: '#builds', message:
"Build#${env.BUILD_NUMBER} ${currentBuild.result}"
Send detailed build reports via email in Jenkins
+
Use the Email Extension plugin and configure templates for
detailedreports. Example: Include build logs and test results in the email.
Back up Jenkins configurations
+
Use the thinBackup plugin or manual backup of $JENKINS_HOME .
Example: Automate backups nightly and store them in a secure locationlike S3.
Recover a Jenkins instance from backup
+
Restore the $JENKINS_HOME directory from thebackup and restart
Jenkins. Example: After restoration, validate all jobs and credentials.
Implement feature flags in Jenkinspipelines
+
Use environment variables or external tools like LaunchDarkly.
Example: A feature flag determines whether to deploy the featurebranch.
Integrate Jenkins with a database for testing
+
Spin up a database container or use a preconfigured
testdatabase. Example: Use Docker Compose to bring up a MySQL container
beforerunning tests.
Manage long-running jobs in Jenkins
+
Break them into smaller jobs or stages to allow checkpoints.
Example: Use timeout to terminate excessivelylong builds.
If Jenkins pipelines start failing intermittently
+
Investigate resource constraints, flaky tests, or networkis
sues. Example: Monitor agent logs and rebuild affected stages.
Manage Jenkins jobs for multiple branches in a monorepo
+
Use multibranch pipelines or branch-specific Jenkinsfiles.
Handle cross-team collaboration in Jenkins pipelines
+
Use shared libraries for reusable code and maintain a central
Jenkinsgovernance team.
Manage Jenkins agents in a dynamic cloudenvironment
+
Use a cloud provider plugin (e.g., Amazon EC2 or Kubernetes).
Example: Configure Kubernetes-based agents to dynamically spin uppods based on job
demands.
Limit the number of concurrent builds for a Jenkins job
+
Use the Throttle Concurrent Builds plugin. Example: Set a limit
of two builds per agent to avoid resourcecontention.
Optimize Jenkins for large-scale builds with limited hardware
+
Use build labels to dis tribute specific jobs to the
rightagents. Example: Assign resource-intensive builds to high-capacity agentswith
labels like high_mem .
Implement custom notifications in Jenkinspipelines
+
Use a custom script to send notifications via APis . Example:
Integrate with Microsoft Teams by using their webhook API tosend custom alerts.
Alert stakeholders only on critical build failures
+
Use conditional steps in pipelines to send notifications based
onfailure type. Example: Notify stakeholders if the failure occurs in the Deploy
stage.
Manage dependencies in a Jenkins CI/CDpipeline
+
Use dependency management tools like Maven, Gradle, or npm.
Example: Use a package.json or pom.xml file to ensure consis tent dependencies
acrossbuilds.
Handle dependency conflicts in a Jenkins build
+
Use dependency resolution features of tools like Maven
orGradle. Example: Exclude transitive dependencies causing conflicts in the pom.xml
.
Debug Jenkins pipeline failureseffectively
+
Enable verbose logging for specific stages or commands.
Example: Use sh 'set -x &&your-command' for detailed command output.
Log custom messages in Jenkins pipelines
+
Use the echo step in declarative or scriptedpipelines. Example:
echo "Starting deployment toenvironment: ${env.ENV_NAME}" .
Monitor Jenkins server health
+
Use the Monitoring plugin or external toolslike Prometheus and
Grafana. Example: Monitor JVM memory, dis k usage, and thread activity
usingPrometheus exporters.
Set up Jenkins alerts for high resource usage
+
Integrate Jenkins with monitoring tools like Nagios orDatadog.
Example: Trigger an alert if CPU usage exceeds 80% duringbuilds.
Set up pipelines to work on multiple operatingsystems
+
Use agent labels to target specific platforms (e.g., linux ,
windows ). Example: Run tests on both Linux and Windows agents using parallelstages.
Ensure portability in Jenkins pipelines across environments
+
Use containerized builds with Docker for a consis tent runtime.
Example: Build and test the application in the same Dockerimage.
Create custom build steps in Jenkins
+
Use the Pipeline Utility Steps plugin or write custom
Groovyscripts. Example: Create a step to clean the workspace, fetch dependencies,and
run tests.
Extend Jenkins functionality with custom plugins
+
Develop a custom Jenkins plugin using the Jenkins Plugin
DevelopmentKit (PDK). Example: A plugin to integrate Jenkins with a
proprietarydeployment system.
Integrate Jenkins with performance testing tools likeJMeter
+
Use the Performance Plugin to parse JMeter results. Example:
Trigger a JMeter script, then analyze results withthresholds for build pass/fail
criteria.
Fail a Jenkins build if performance metrics are below
expectations
+
Add a stage to validate performance metrics against
predefinedthresholds. Example: Fail the build if response time exceeds 500ms.
Trigger a Jenkins job based on an external event (e.g., anAPI
call)
+
Use the Jenkins Remote Trigger URL with an API token. Example:
Trigger a job using curl -XPOST
/job/ /buildtoken= .
+
/job/ /buildtoken= .
Schedule a Jenkins job to run only on specific days
+
Use a cron expression in the Build periodically field. Example:
Schedule a job for Mondays and Fridays using H H * * 1,5 .
Use Jenkins to automate databasemigrations
+
Integrate with tools like Flyway or Liquibase. Example: Add a
pipeline stage to run migration scripts beforedeployment.
Verify database changes in a Jenkins pipeline
+
Add a test stage to validate schema changes or dataconsis
tency. Example: Run SQL queries to ensure migration scripts worked asexpected.
Secure Jenkins pipelines from maliciousscripts
+
Use sandboxed Groovy scripts and validate
third-partyJenkinsfiles. Example: Use a code review process for external
contributions.
Protect sensitive information in Jenkins logs
+
Mask sensitive information using the Mask Passwords plugin.
Example: API keys are replaced with **** inlogs.
Implement versioning in Jenkins pipelines
+
Use build numbers or Git tags for versioning. Example: Generate
a version like 1.0.${BUILD_NUMBER} during the build process.
Automate release tagging in Jenkins
+
Use git tag commands in the pipeline. Example: Add a post-build
step to tag the release and push it to therepository.
Fix "agent offline" is sues inJenkins
+
Verify network connectivity, agent logs, and
master-agentconfigurations. Example: Check if the agent process has permis sions to
connect to themaster.
If Jenkins fails to fetch code from a Git repository
+
Check Git plugin configurations, repository URL, and
accesscredentials. Example: Verify that the SSH key used by Jenkins is valid.
Implement canary deployments in Jenkins
+
Deploy a small percentage of traffic to the new version and
monitorbefore full rollout. Example: Use a custom script or plugin to automate
trafficshifting.
Automate rollback in Jenkins pipelines
+
Maintain a record of previous deployments and redeploy the
lastsuccessful build. Example: Use a rollback stage that fetchesartifacts of the
previous version.
Ensure Jenkins pipelines are maintainable
+
Use shared libraries, modular pipelines, and
cleardocumentation. Example: Abstract repetitive tasks like linting or packaging
intoshared library functions.
Handle Jenkins updates in a production environment
+
Test updates in a staging environment before applying them
toproduction. Example: Validate that plugins are compatible with the new
Jenkinsversion.
Handle long-running builds inJenkins
+
Use timeout steps to terminate excessive runtimes. Example:
Fail the build if it exceeds 2 hours.
Prioritize critical jobs in Jenkins
+
Assign higher priority to critical jobs using the Priority
Sorterplugin. Example: Ensure deployment jobs are always queued before
non-criticalones.
Build and test multiple modules of a monolithicapplication in
Jenkins
+
Use a multi-module build system like Maven or Gradle to compile
andtest each module independently. Example: Add stages in the pipeline to build,
test, and packagemodules sequentially or in parallel.
Configure Jenkins to build microservices independently
+
Use separate pipelines for each microservice. Example: Trigger
the build of a specific microservice based onchanges in its folder using the path
parameter inmultibranch pipelines.
Integrate Jenkins with Selenium for UItesting
+
Use the Selenium WebDriver and Jenkins Selenium plugin.
Example: Add a stage in the pipeline to run Selenium test scripts ona dedicated test
environment.
Fail a Jenkins build if tests fail intermittently
+
Use the retry block to re-run flaky tests alimited number of
times. Example: Fail the build after three retries if the tests continue tofail.
Pass parameters dynamically to a Jenkinspipeline
+
Use parameterized builds and populate parameters dynamically
througha script. Example: Use the active choice plugin topopulate a dropdown with
values fetched from an API.
Create matrix builds in Jenkins
+
Use the Matrix plugin or a declarative pipeline with matrix
stages. Example: Test an application on multiple OS and Java versions.
Back up and restore Jenkins jobs
+
Back up the $JENKINS_HOME/jobs directory. Example: Automate
backups using a cron job or tools like thinBackup .
Steps follow to restore Jenkins jobs from backup
+
Stop Jenkins, copy the backed-up job configurations to the
$JENKINS_HOME/jobs directory, and restart Jenkins. Example: Verify job
configurations and plugin dependenciespost-restoration.
Use Jenkins to validate Infrastructure as Code(IaC)
+
Integrate tools like Terraform or CloudFormation with
Jenkinspipelines. Example: Add a stage to validate Terraform plans using terraform
validate .
Implement automated provis ioning using Jenkins
+
Use Jenkins to trigger Terraform or Ansible scripts for provis
ioninginfrastructure. Example: Provis ion an AWS EC2 instance and deploy an
application onit as part of the pipeline.
Test across multiple environments simultaneously inJenkins
+
Use parallel stages in declarative pipelines. Example: Run
tests on Dev, QA, and Staging environments inparallel.
Configure Jenkins to run parallel builds for multiple branches
+
Use multibranch pipelines to detect and execute builds for
allbranches. Example: Each branch builds independently in its pipeline.
Securely pass secrets to a Jenkins job
+
Use the Credentials plugin to inject secrets into the
pipeline.Example: Use withCredentials to pass a secret API key to ashell script:
withCredentials([string(credentialsId: 'api-key', variable:'API_KEY')]) { sh 'curl
-H "Authorization: $API_KEY"https://api.example.com' }
Audit the usage of credentials in Jenkins
+
Enable auditing through the Audit Trail plugin and monitor
credentialusage logs. Example: Identify unauthorized access to sensitivecredentials.
Manage a situation where a Jenkins job is stuckindefinitely
+
Identify the is sue by reviewing the build logs and system
resourceusage. Example: Terminate the stuck process on the agent and re-trigger
thejob.
Handle pipeline execution that consumes excessive resources
+
Use resource quotas or throttle settings tolimit resource
usage. Example: Assign builds to low-resource agents for non-criticaljobs.
Implement multi-cloud deployments usingJenkins
+
Configure multiple cloud credentials and deploy to each
providerconditionally. Example: Deploy to AWS, Azure, and GCP using
environment-specificdeployment scripts.
Monitor Jenkins pipeline performance
+
Use plugins like Build Monitor, Prometheus, or Performance
Publis herto track performance metrics. Example: Analyze pipeline execution time
trends to optimize slowstages.
Generate build trend reports in Jenkins
+
Use the Test Results Analyzer or Dashboard View plugin.
Example: Vis ualize the number of passed, failed, and skipped testsover time.
Create dynamic stages in a Jenkinspipeline
+
Use Groovy scripting in a scripted pipeline to define
stagesdynamically. Example: Loop through a lis t of services and create a build
stage foreach.
Dynamically load environment configurations in Jenkins
+
Use configuration files stored in a repository or as a Jenkins
sharedlibrary. Example: Load environment-specific variables from a JSON file
duringthe pipeline execution.
Implement build caching in Jenkinspipelines
+
Use tools like Docker cache or Gradle/Maven build caches.
Example: Use a shared cache directory for dependencies acrossbuilds.
Handle incremental builds in Jenkins
+
Configure the pipeline to build only the modified components
usingtools like Git diff. Example: Trigger builds for only the microservices that
havechanged.
Set up Jenkins for multitenant usage acrossteams
+
Use folders, RBAC, and dedicated agents for each team. Example:
Team A and Team B have separate folders with is olatedpipelines and credentials.
Handle conflicts when multiple teams use shared Jenkins
resources
+
Use the Lockable Resources plugin to serializeaccess to shared
resources. Example: Ensure only one team can deploy to the staging environmentat a
time.
Recover a pipeline that fails due to a transientis sue
+
Use retry blocks to automatically retry thefailed step.
Example: Retry a deployment step up to three times if it fails due tonetwork is
sues.
Resume a pipeline after fixing an error
+
Use the Restart from Stage feature indeclarative pipelines.
Example: Resume the pipeline from the Deploy stage after fixing a configuration is
sue.
Integrate Jenkins with JIRA for is suetracking
+
Use the JIRA plugin to update is sue status automatically after
abuild. Example: Transition a JIRA ticket to "In Progress" when thebuild starts.
Integrate Jenkins with a service bus or message queue
+
Use custom scripts or plugins to publis h messages to RabbitMQ,
Kafka,or AWS SQS. Example: Notify downstream systems after a successful deployment
bysending a message to a queue.
Use Jenkins to build and test containerizedapplications
+
Use the Docker Pipeline plugin to build and test images.
Example: Build a Docker image in one stage and run tests in acontainerized
environment in the next stage.
Manage container orchestration with Jenkins
+
Use Kubernetes or Docker Compose to orchestrate
multi-containerenvironments. Example: Deploy an application and database containers
together forintegration tests.
Allocate specific agents for certainpipelines
+
Use agent labels in the pipeline configuration. Example: Assign
a pipeline to the high-memory agent for resource-intensive builds.
Ensure efficient resource utilization across Jenkins agents
+
Use the Load Balancer plugin or Jenkins Cloud Agents for
dynamicscaling. Example: Scale down idle agents during off-peak hours.
Manage Jenkins configurations acrossenvironments
+
Use tools like Jenkins Configuration as Code (JCasC) or custom
Groovyscripts. Example: Use a YAML configuration file to define jobs, credentials,
andplugins.
Version controlJenkins jobs and pipelines
+
Store pipeline scripts in a Git repository. Example: Use
Jenkinsfiles to define pipelines, making them portableand traceable.
Implement rolling deployments withJenkins
+
Deploy updates incrementally to a subset of servers or pods.
Example: Update 10% of the pods in Kubernetes before proceeding tothe next batch.
Automate blue-green deployments in Jenkins
+
Use separate environments for blue and green and switch traffic
post-deployment. Example: Use a load balancer to toggle between environments
aftersuccessful tests.
Integrate Jenkins with API testing tools likePostman
+
Use Newman (Postman CLI) in the pipeline to executecollections.
Example: Run newman run collection.json in atest stage.
Handle test data for automated testing in Jenkins
+
Use environment variables or configuration files to provide
testdata. Example: Pass database credentials as environment variables duringtest
execution.
Automate release notes generation inJenkins
+
Use a custom script or plugin to fetch Git commit messages or
JIRAupdates. Example: Generate release notes from commits tagged with [release] .
Implement versioning in a CI/CD pipeline
+
Use Git tags or build numbers to version artifacts. Example:
Create a version string like 1.0.${BUILD_NUMBER} for every build.
Steps take if Jenkins builds suddenly start failingacross all
jobs
+
Check global configurations, credentials, and plugin updates.
Example: Investigate whether a recent plugin update causedcompatibility is sues.
Handle Jenkins agent dis connections during builds
+
Configure a reconnect strategy or reassign the job to
anotheragent. Example: Use a script to auto-restart dis connected agents.
Design pipelines to handle varying deploymentstrategies
+
Use parameters to define the deployment type (e.g.,
rolling,canary). Example: A pipeline prompts the user to select the strategy
beforedeployment.
Configure pipelines for multiple repository triggers
+
Use a webhook aggregator to trigger the pipeline for changes
inmultiple repositories. Example: Trigger a build when changes are made to either
the frontendor backend repositories.
Ensure compliance with Jenkins pipelines
+
Use tools like SonarQube for code quality checks and enforce
policieswith shared libraries. Example: Ensure every pipeline includes a security
scan stage.
Audit pipeline execution in Jenkins
+
Use the Audit Trail plugin to track changes and executionhis
tory. Example: Identify who triggered a job and when.
Set up Jenkins for high availability
+
Use a clustered setup with multiple Jenkins masters and
sharedstorage. Example: Configure an NFS share for $JENKINS_HOME to ensure consis
tency across masters.
Your approach to restoring Jenkins from a dis aster
+
Restore configurations and data from backups, then validate
pluginsand jobs. Example: Use thinBackup to quickly recover Jenkins data.
Implement Jenkins backups for criticalenvironments
+
Use tools like thinBackup or JenkinsConfiguration as Code
(JCasC) to back up configurations, jobs, and plugins.Automate the process with cron
jobs or scripts. Example: Automate daily backups of the $JENKINS_HOME directory and
store them on S3 or a secure location.
Strategies do you recommend for Jenkins dis aster recovery
+
Use a secondary Jenkins instance as a standby master with
replicateddata. Example: Periodically sync $JENKINS_HOME between primary and standby
instances and use a load balancer forfailover.
Handle consis tent build failures caused by flakytests
+
Identify flaky tests using test reports and is olate them
intoseparate test suites. Example: Retry only the flaky tests multiple times in a
dedicatedpipeline stage.
If builds fail due to resource exhaustion
+
Optimize resource allocation by reducing the number of
concurrentbuilds or increasing system capacity. Example: Add more Jenkins agents or
limit concurrent jobs with theThrottle Concurrent Builds plugin.
Manage environment-specific variables in Jenkinspipelines
+
Use environment variables defined in the Jenkinsfile or
externalconfiguration files. Example: Load environment-specific files based on the
selected parameter using: def config = readYaml file:
"config/${env.ENVIRONMENT}.yaml"
Handle multi-environment deployments in a single pipeline
+
Use declarative pipeline stages with conditional logic for
differentenvironments. Example: Deploy to QA, Staging, and Production in sequence
withmanual approval gates for Staging and Production.
Reduce pipeline execution time for largeapplications
+
Use parallel stages, build caching, and
pre-configuredenvironments. Example: Parallelize unit tests, integration tests, and
static codeanalysis stages.
Identify and fix bottlenecks in Jenkins pipelines
+
Use performance plugins or monitor logs to detect slow stages.
Example: Split a long-running build stage into smaller tasks oroptimize resource-
intensive scripts.
Ensure reproducibility in containerized Jenkinspipelines
+
Use Docker images with all required dependenciespre-installed.
Example: Build and test Node.js applications using a custom Docker image: agent {
docker { image 'custom-node:14' } }
Handle container orchestration in Jenkins pipelines
+
Use Kubernetes plugins or tools like Helm for deploying and
managingcontainers. Example: Deploy a Helm chart to Kubernetes as part of
thepipeline.
Manage shared Jenkins resources across multipleteams
+
Use the Folder and Role-Based Authorization Strategy plugins
tois olate team- specific configurations. Example: Each team has a dedicated folder
with restricted access totheir jobs and agents.
Create reusable components for different team pipelines
+
Use Jenkins Shared Libraries for common functionality like
deploymentscripts or notifications. Example: Create a shared library to send Slack
notifications: def sendNotification(String message) { slackSend(channel:'#builds',
message: message) }
Secure sensitive API keys and tokens inJenkins
+
Use the Credentials plugin to securely store and retrieve
sensitiveinformation. Example: Use withCredentials to pass an APItoken to a
pipeline: withCredentials([string(credentialsId: 'api-token', variable:'TOKEN')]) {
sh "curl -H 'Authorization: Bearer ${TOKEN}'https://api.example.com" }
Implement secure access controlfor Jenkins users
+
Use the Role-Based Authorization Strategy plugin to define
roles andpermis sions. Example: Admins have full access, while developers have
job-specificpermis sions.
Handle integration testing in Jenkinspipelines
+
Spin up test environments using Docker or Kubernetes for is
olatedtesting. Example: Run integration tests against a temporary database
containerin a pipeline stage.
Automate regression testing in Jenkins
+
Use tools like Selenium or TestNG for regression tests
triggeredafter every build. Example: Schedule nightly builds to run a regression
testsuite.
Customize build notifications inJenkins
+
Use plugins like Email Extension or Slack Notification with
customtemplates. Example: Include build duration and commit messages in
Slacknotifications.
Configure Jenkins to notify specific stakeholders
+
Use the post-build step to send notifications to different
recipientsbased on pipeline results. Example: Notify developers on failure and QA on
success.
Integrate Jenkins with Terraform for IaCautomation
+
Use the Terraform plugin or CLI to apply configurations.
Example: Add a stage to validate, plan, and apply Terraformscripts.
Integrate Jenkins with Ansible for configuration management
+
Trigger Ansible playbooks from the Jenkins pipeline using the
Ansibleplugin or CLI. Example: Use ansiblePlaybook to deployconfigurations to a
server.
Horizontally scale Jenkins to handle highworkloads
+
Add multiple agents and dis tribute builds using labels or
nodeaffinity. Example: Use Kubernetes agents to dynamically scale based on thebuild
queue.
Optimize Jenkins for a dis tributed build environment
+
Use dis tributed agents with pre-installed dependencies to
reducesetup time. Example: Assign resource-intensive jobs to dedicated
high-performanceagents.
Handle multi-region deployments inJenkins
+
Use separate stages or pipelines for each region. Example:
Deploy to US-East and EU-West regions using AWS CLIcommands.
Implement zero-downtime deployments in Jenkins
+
Use rolling updates or blue-green deployments to
ensureavailability. Example: Gradually replace instances in an auto-scaling group
withthe new version.
Debug Jenkins pipeline is sues inreal-time
+
Use console logs and debug flags in pipeline steps. Example:
Add set -x to shell commands fordetailed debugging.
Handle agent dis connect is sues during builds
+
Implement retry logic and configure robust reconnect settings.
Example: Auto-restart agents if they dis connect due to resourceconstraints.
Implement pipeline-as-code in Jenkins
+
Store Jenkinsfiles in the source code repository
forversion-controlled pipelines. Example: Use checkout scm to pull theJenkinsfile
from Git.
Integrate Jenkins with GitOps workflows
+
Use tools like ArgoCD or Flux in combination with Jenkins
forGitOps. Example: Trigger a deployment when changes are committed to a
Gitrepository.
Implement feature toggles in Jenkinspipelines
+
Use environment variables or configuration files to toggle
featuresduring deployment. Example: Use a parameter in the pipeline to enable or dis
able a specific feature: if (params.ENABLE_FEATURE_X) { sh 'deploy-feature-x.sh' }
Automate multi-branch testing in Jenkins
+
Use multibranch pipelines to automatically detect and run tests
onnew branches. Example: Configure branch-specific Jenkinsfiles to define
uniquetesting workflows.
Manage dependency trees in Jenkins for largeprojects
+
Use build tools like Maven or Gradle with dependency
managementfeatures. Example: Trigger dependent builds using the Parameterized
Trigger plugin.
Build microservices with interdependencies in Jenkins
+
Use a parent pipeline to trigger builds for dependent
microservicesin the correct order. Example: Build Service A, then trigger builds for
Services B and C,which depend on it.
Deploy multiple services using Jenkins inparallel
+
Use the parallel directive in a declarativepipeline. Example:
Deploy frontend, backend, and database servicessimultaneously.
Sequence dependent service deployments in Jenkins
+
Use pipeline stages with proper dependencies defined. Example:
Deploy a database schema before deploying the backendservice.
Enforce code scanning in Jenkinspipelines
+
Integrate tools like Snyk, Checkmarx, or OWASPDependency-Check.
Example: Add a stage to scan for vulnerabilities in dependencies andfail the build
on high-severity is sues.
Prevent unauthorized pipeline modifications
+
Use Git repository branch protections and Jenkins
accesscontrols. Example: Require pull requests to be reviewed before
updatingJenkinsfiles in main .
Manage Jenkins jobs for legacy systems
+
Use parameterized freestyle jobs or convert them into pipelines
forbetter flexibility. Example: Migrate a job using shell scripts into a
scriptedpipeline.
Ensure compatibility between Jenkins and legacy build tools
+
Use custom scripts or Dockerized environments that mimic the
legacysystem. Example: Run builds in a container with legacy
dependenciespre-installed.
Store and retrieve pipeline artifacts inJenkins
+
Use the Archive the Artifacts plugin or storeartifacts in a
dedicated repository like Nexus or Artifactory. Example: Archive build logs and
binaries for debugging andauditing.
Handle large artifact storage in Jenkins
+
Use external storage solutions like S3 or Azure Blob Storage.
Example: Upload artifacts to an S3 bucket as part of the post-buildstep.
Trigger Jenkins builds based on Git tagcreation
+
Configure webhooks to trigger jobs when a tag is created.
Example: Trigger a release pipeline for tags matching the pattern v* .
Implement Git submodule handling in Jenkins
+
Enable submodule support in the Git plugin configuration.
Example: Clone and update submodules automatically during thecheckout process.
Implement cross-browser testing inJenkins
+
Use tools like Selenium Grid or BrowserStack for
browsercompatibility testing. Example: Run tests across Chrome, Firefox, and Safari
in parallelstages.
Manage test environments dynamically in Jenkins
+
Use Docker or Kubernetes to spin up test environments during
pipelineexecution. Example: Deploy test environments using Helm charts and tear
themdown after tests.
Customize notifications for specific pipelinestages
+
Use conditional logic to send stage-specific notifications.
Example: Notify the QA team only when the test stage fails.
Integrate Jenkins with Microsoft Teams for notifications
+
Use a webhook to send notifications to Teams channels. Example:
Post pipeline results to a Teams channel using a curl command.
Optimize Jenkins pipelines for Docker-basedapplications
+
Use Docker caching and multis tage builds to speed up builds.
Example: Build and push Docker images only if code changes aredetected.
Deploy containerized applications using Jenkins
+
Use Kubernetes manifests or Docker Compose files in
pipelinescripts. Example: Deploy to Kubernetes using kubectlapply .
Debug failed Jenkins jobs effectively
+
Analyze logs, enable debug mode, and rerun failing
stepslocally. Example: Use sh 'set -x' inpipeline steps to trace shell command
execution.
Handle intermittent pipeline failures
+
Use retry mechanis ms and investigate logs to identify
flakycomponents. Example: Retry a step with a maximum of three attempts: retry(3) {
sh 'flaky-command.sh' }
Implement blue-green deployments in Jenkinspipelines
+
Use separate environments for blue and green, then switch
trafficusing a load balancer. Example: Deploy the new version to the green
environment, test it, and redirect traffic from blue to green .
Roll back a blue-green deployment
+
Switch traffic back to the stable environment (e.g., blue ) in
case of is sues. Example: Update load balancer settings to point to the
previousversion.
Standardize pipeline templates for multipleprojects
+
Use Jenkins Shared Libraries to define reusable
pipelinefunctions. Example: Define a buildAndDeploy function forconsis tent CI/CD
across projects.
Parameterize pipeline templates for different use cases
+
Use pipeline parameters to customize behavior dynamically.
Example: Use a DEPLOY_ENV parameter to specifythe target environment.
Monitor long-running builds in Jenkins
+
Use the Build Monitor plugin or integrate with external
monitoringtools. Example: Set up alerts for builds exceeding a specificduration.
Identify agents with high resource usage
+
Use the Monitoring plugin or analyze system metrics. Example:
Identify agents with CPU or memory spikes duringbuilds.
Audit Jenkins pipelines for regulatorycompliance
+
Use plugins like Audit Trail to log all pipeline changes
andexecutions. Example: Ensure every production deployment is traceable with anaudit
log.
Enforce compliance checks in Jenkins pipelines
+
Integrate with compliance tools like HashiCorp Sentinel or
customscripts. Example: Fail the pipeline if IaC templates do not meet
compliancerequirements.
Configure Jenkins for auto-scaling in cloudenvironments
+
Use Kubernetes or AWS plugins to dynamically scale agents based
onthe build queue. Example: Configure a Kubernetes pod template to spin up agents
ondemand.
Balance workloads in a dis tributed Jenkins setup
+
Use node labels and assign jobs based on agent capabilities.
Example: Assign resource-intensive builds to high-memoryagents.
Analyze build success rates in Jenkins
+
Use the Build His tory Metrics plugin or integrate with
externalanalytics tools. Example: Generate reports showing success and failure
trends overtime.
Track pipeline execution times across multiple jobs
+
Use the Pipeline Stage View plugin to vis ualize
executiontimes. Example: Identify stages with consis tently high executiontimes.
Implement canary deployments in Jenkinspipelines
+
Deploy updates to a small percentage of instances or users
first,then gradually increase. Example: Route 5% of traffic to the new version using
feature flagsor load balancer rules.
Deploy serverless applications using Jenkins
+
Use CLI tools like AWS SAM or Azure Functions Core Tools.
Example: Deploy a Lambda function using aws lambdaupdate-function-code .
Handle a Jenkins master node running out of dis kspace
+
Clean up old build logs, artifacts, and workspace
directories.Example: Use a script to automate periodic cleanup: find
$JENKINS_HOME/workspace -type d -mtime +30 -exec rm -rf {}\;
Address slow Jenkins startup times
+
Optimize plugins by removing unused ones and upgrading to
newerversions. Example: Use the Pipeline Speed/Durability Settings for lightweight
pipeline executions.
Migrate from Jenkins to a modern CI/CDtool
+
Export pipelines, convert them to the new tool's format,
andtest the migrated workflows. Example: Migrate from Jenkins to GitHub Actions
using YAML-basedworkflows.
Ensure Jenkins pipelines remain future-proof
+
Regularly update plugins, adopt new best practices, and
refactoroutdated pipelines. Example: Transition from freestyle jobs to declarative
pipelines forbetter maintainability.
DOCKER
+
Problem does Docker solve?
+
It eliminates “works on my machine” issues by packaging
dependencies together.
Difference between image and container?
+
Image is a blueprint; container is a running instance.
Are Docker containers lightweight?
+
Yes, they share the host OS kernel.
Docker different from virtual machines?
+
Docker shares OS kernel; VMs run separate operating systems.
Public Docker registry?
+
A registry accessible to everyone.
Private Docker registry?
+
A restricted-access image repository.
Docker run?
+
Creates and starts a container from an image.
Docker important?
+
It improves deployment speed, scalability, and consistency.
FROM instruction?
+
Specifies the base image for the Docker image.
RUN instruction?
+
Executes commands during image build.
COPY instruction?
+
Copies files from host to image.
ADD instruction?
+
Copies files and supports URLs and archives.
CMD instruction?
+
Defines default command to run in a container.
ENTRYPOINT instruction?
+
Specifies the main executable for a container.
Difference between CMD and ENTRYPOINT?
+
ENTRYPOINT is fixed; CMD is overridable.
EXPOSE instruction?
+
Documents the port the container listens on.
ENV instruction?
+
Sets environment variables in image.
WORKDIR instruction?
+
Sets working directory for instructions.
USER instruction?
+
Defines the user to run container processes.
Image layer?
+
A read-only filesystem layer created by instructions.
Image caching?
+
Reusing unchanged layers to speed up builds.
Multi-stage build?
+
Using multiple FROM statements to optimize images.
Use multi-stage builds?
+
To reduce final image size.
Docker ignore file?
+
A file defining files excluded from build context.
Build context?
+
Files sent to Docker daemon during build.
Best practice for Docker images?
+
Use small base images and minimize layers.
Docker container lifecycle?
+
The stages a container goes through from creation to removal.
Main container states?
+
Created, running, paused, stopped, and removed.
Docker create do?
+
Creates a container without starting it.
Docker start do?
+
Starts an existing stopped container.
Docker stop do?
+
Gracefully stops a running container.
Docker kill do?
+
Forcefully stops a container immediately.
Docker restart do?
+
Stops and then starts a container.
Docker rm do?
+
Removes a stopped container.
Docker logs do?
+
Displays logs of a container.
Docker exec do?
+
Runs a command inside a running container.
Container naming?
+
Assigning a readable name to a container.
Container exit code?
+
Status code indicating how a container stopped.
Container restart policy?
+
Defines automatic restart behavior.
Common restart policies?
+
no, always, on-failure, unless-stopped.
Container pruning?
+
Removing unused stopped containers.
Container lifecycle management important?
+
To ensure stability, resource efficiency, and reliability.
Docker networking?
+
Docker networking enables communication between containers and
external systems.
Default Docker network?
+
The bridge network.
User-defined bridge network?
+
A custom bridge network with DNS support.
Host network?
+
A network mode where container shares host network stack.
Is host network used?
+
For high-performance networking with no isolation.
Overlay network used for?
+
Connecting containers across different Docker hosts.
Macvlan network?
+
Assigns MAC address to container making it appear as physical
device.
Is macvlan used?
+
containers need direct access to physical network.
None network?
+
A network mode with no networking.
Container-to-container communication?
+
Communication using container names or IPs.
Port mapping?
+
Mapping container ports to host ports.
#NAME?
+
Publishes container ports to host.
Network isolation?
+
Separating container traffic for security.
DNS-based service discovery?
+
Resolving container names to IP addresses.
Docker ingress network?
+
Load balancing network for Docker Swarm services.
Network driver?
+
A plugin implementing network functionality.
Docker networking important?
+
It enables secure and scalable container communication.
Docker storage?
+
Docker storage manages persistent and non-persistent container
data.
Use Docker volumes?
+
To persist data beyond container lifetime.
Bind mount?
+
Mounting a host directory directly into a container.
Tmpfs mount?
+
An in-memory filesystem for temporary data.
Difference between volume and bind mount?
+
Volumes are Docker-managed; bind mounts use host paths.
Docker volumes stored?
+
In Docker’s managed directory on the host.
Volume driver?
+
A plugin managing volume storage.
Named volume?
+
A volume with an explicit name.
Anonymous volume?
+
A volume without a specific name.
Volume mounting?
+
Attaching a volume to a container path.
Docker volume create do?
+
Creates a new Docker volume.
Docker volume ls do?
+
Lists all Docker volumes.
Docker volume inspect do?
+
Displays volume metadata.
Docker volume rm do?
+
Removes unused volumes.
Volume pruning?
+
Removing unused volumes automatically.
Data persistence?
+
Retaining data across container restarts.
Read-only volume?
+
A volume mounted with read-only access.
Storage isolation?
+
Separating container data securely.
Docker storage important?
+
It ensures data durability and application reliability.
File does Docker Compose use?
+
docker-compose.yml.
Service in Docker Compose?
+
A definition of a container configuration.
Docker-compose up?
+
Starts all services defined in compose file.
Docker-compose down?
+
Stops and removes services, networks, and volumes.
Docker-compose build?
+
Builds images defined in compose file.
Docker-compose ps?
+
Lists running compose services.
Docker-compose logs?
+
Shows logs of services.
Docker-compose scale?
+
Scales service instances.
Service dependency?
+
Defining startup order using depends_on.
Environment section in compose?
+
Defines environment variables.
Volumes section in compose?
+
Defines volume mappings.
Networks section in compose?
+
Defines networks for services.
Restart policy in compose?
+
Defines service restart behavior.
Build context in compose?
+
Location of Dockerfile and files.
Image field in compose?
+
Specifies image to use.
Port mapping in compose?
+
Maps container ports to host.
Multi-container architecture?
+
Applications split into multiple cooperating containers.
Use Docker Compose?
+
To simplify local development and testing.
Compose best practice?
+
Keep services small and configuration clear.
Container security important?
+
Containers share host resources and can be attack vectors.
A group of Docker hosts acting as a single virtual system.
Manager node?
+
A node responsible for orchestration and cluster management.
Worker node?
+
A node that runs containers as instructed by managers.
Service in Docker Swarm?
+
A definition of how containers should run in the cluster.
Task in Docker Swarm?
+
A running instance of a service.
Service replication?
+
Running multiple instances of a service.
Global service?
+
A service running one task per node.
Service rollback?
+
Reverting to previous service version.
Swarm load balancing?
+
Distributing traffic across service replicas.
Routing mesh?
+
Built-in Swarm load balancing network.
Secret management in Swarm?
+
Secure storage and injection of secrets.
Config management in Swarm?
+
Managing non-sensitive configuration data.
High availability in Swarm?
+
Ensuring service continuity despite failures.
Node failure handling?
+
Automatically rescheduling tasks on healthy nodes.
Production deployment?
+
Running applications reliably at scale.
Orchestration important?
+
It enables scalability, resilience, and automation.
Advantages of Kubernetes?
+
It provides automatic scaling, self-healing, load balancing,
rolling updates, service discovery, and multi-cloud support. Kubernetes enables
highly available and scalable microservice deployments.
Bridge network?
+
Bridge network is the default Docker network for communication
between containers on the same host.
Deploy multiple microservices to Docker?
+
Containerize each service separately and manage them with
Docker Compose or Kubernetes. Use service discovery and networking to allow
container-to-container communication.
Deploy multiple services across multiple host machines?
+
Use Kubernetes, Docker Swarm, or cloud orchestration tools.
They handle load balancing, service discovery, networking, and scaling across
multiple hosts.
Deploy Spring Boot JAR to Docker?
+
Create a Dockerfile with a JDK base image and copy the JAR.
Expose the required port and run using ENTRYPOINT ["java","-jar","app.jar"]. Build
and run using Docker commands.
Deploy Spring Boot Microservice to Docker?
+
Package the microservice as a JAR and create a Dockerfile using
a JDK base image. Copy the JAR file and expose the service port. Build the Docker
image and run the container using docker run -p : .
Deploy Spring Boot WAR to Docker?
+
Create a Dockerfile using a Tomcat base image and copy the WAR
file into the webapps folder. Build the Docker image using docker build -t app . and
run the container using docker run -p 8080:8080 app. This deploys the WAR inside a
Dockerized Tomcat environment.
ADD and COPY in Dockerfile?
+
COPY copies local files; ADD can copy local files remote URLs
and extract tar archives.
CMD and ENTRYPOINT in Dockerfile?
+
CMD sets default arguments for a container; ENTRYPOINT
configures the container to run as an executable.
Docker and virtual machines?
+
Docker containers share the host OS kernel and are lightweight;
VMs have their own OS and are heavier.
Docker bind mount and volume?
+
Bind mount maps host directories to containers; volumes are
managed by Docker for persistence and portability.
Docker Compose and Docker Swarm?
+
Docker Compose manages multi-container applications locally;
Docker Swarm is a container orchestration tool for clustering and scaling
containers.
Docker image layer and container layer?
+
Image layers are read-only; container layer is read-write on
top of image layers.
Docker run and Docker service create?
+
Docker run creates a standalone container; service create
deploys containers as a Swarm service with scaling.
Public and private Docker registries?
+
Public registry is accessible to everyone; private registry
restricts access to specific users or organizations.
DiffBet Kubernetes and Docker Swarm?
+
Docker Swarm is simpler and tightly integrates with Docker,
while Kubernetes is more powerful with advanced scheduling, auto-scaling, and
monitoring capabilities. Kubernetes is enterprise-grade, Swarm suits smaller
deployments.
Docker attach vs exec?
+
Attach connects to container stdin/stdout; exec runs a command
in a running container.
Docker attach?
+
Docker attach connects to a running container’s standard input
output and error streams.
Docker best practices?
+
Best practices include small images multi-stage builds volume
usage environment variables and secure secrets management.
Docker build ARG?
+
ARG defines a variable that can be passed during build time.
Docker build cache?
+
Build cache stores image layers to speed up subsequent builds.
Docker build?
+
Docker build creates an image from a Dockerfile.
Docker cache?
+
Docker cache stores previously built layers to speed up future
builds.
Docker CLI?
+
Docker CLI is a command-line interface to manage Docker images
containers networks and volumes.
Docker commit?
+
Docker commit creates a new image from a container’s current
state.
Docker compose down?
+
Docker compose down stops and removes containers networks and
volumes defined in a Compose file.
Docker compose logs?
+
Docker compose logs shows logs from all services in the Compose
application.
Docker compose scale?
+
Compose scale adjusts the number of container instances for a
service.
Docker compose up?
+
Docker compose up builds creates and starts containers defined
in a Compose file.
Docker config?
+
Docker config stores non-sensitive configuration data for
containers in Swarm mode.
Docker container commit?
+
Container commit creates a new image from a running container.
Docker container restart?
+
Container restart stops and starts a container.
Docker context use?
+
Context use switches the active Docker environment or endpoint.
Docker context?
+
Docker context allows switching between multiple Docker
environments or endpoints.
Docker diff?
+
Diff shows changes made to container filesystem since creation.
Docker Engine?
+
Docker Engine is the core component of Docker that creates and
runs Docker containers.
Docker ENTRYPOINT vs CMD combination?
+
ENTRYPOINT defines executable; CMD provides default arguments
to ENTRYPOINT.
Docker ENV?
+
ENV sets environment variables inside a container at build or
run time.
Docker exec?
+
Docker exec runs a command inside a running container.
Docker EXPOSE?
+
EXPOSE documents the port on which the container listens.
Docker health check?
+
Health check monitors container status and defines conditions
for healthy or unhealthy states.
Docker healthcheck command?
+
Healthcheck defines a command in Dockerfile to monitor
container status.
Docker Hub?
+
Docker Hub is a cloud-based registry to store and share Docker
images.
Docker image prune?
+
Image prune removes dangling (unused) images.
Docker inspect format?
+
Inspect format uses Go templates to extract specific JSON
fields.
Docker inspect?
+
Docker inspect returns detailed JSON information about
containers images or networks.
Docker kill vs stop?
+
Kill forces container termination; stop gracefully stops and
allows cleanup.
Docker layer?
+
Docker layer is a filesystem layer created for each Dockerfile
instruction during image build.
Docker load vs import?
+
Load imports an image from a tar file; import creates an image
from a filesystem archive.
Docker login?
+
Docker login authenticates a user with a Docker registry.
Docker logout?
+
Docker logout removes saved credentials for a Docker registry.
Docker logs -f?
+
Logs -f streams container logs in real-time.
Docker logs?
+
Docker logs display the standard output and error of a running
or stopped container.
Docker multi-stage build?
+
Multi-stage build reduces image size by using multiple FROM
statements in a Dockerfile for building and final image creation.
Docker network create?
+
Docker network create creates a new Docker network.
Docker network inspect?
+
Docker network inspect shows detailed information about a
network and connected containers.
Docker network ls?
+
Docker network ls lists all networks on the Docker host.
Docker network types?
+
Types include bridge host overlay macvlan and none.
Docker network?
+
Docker network allows containers to communicate with each other
or with external networks.
Docker node?
+
Docker node is a Swarm cluster member (manager or worker)
managed by Docker.
Docker overlay network in Swarm?
+
Overlay network allows services across multiple nodes to
communicate securely.
Docker ports vs EXPOSE?
+
EXPOSE only documents; ports (-p) maps container ports to host.
Docker prune -a?
+
Docker prune -a removes all stopped containers unused networks
images and optionally volumes.
Docker prune containers?
+
Prune containers removes stopped containers to free space.
Docker prune volume?
+
Docker prune volume removes unused volumes.
Docker prune?
+
Docker prune removes unused containers networks volumes or
images.
Docker ps -a?
+
Docker ps -a lists all containers including stopped ones.
Docker ps?
+
Docker ps lists running containers and their details.
Docker pull?
+
Docker pull downloads a Docker image from a registry.
Docker push?
+
Docker push uploads a Docker image to a registry.
Docker registry?
+
Docker registry stores Docker images; Docker Hub is a public
registry while private registries are also supported.
Docker replica?
+
Replica is an instance of a service running in a Swarm cluster.
Docker restart always?
+
Restart always ensures the container restarts automatically if
it stops.
Docker restart policy?
+
Restart policy defines when a container should restart e.g.
always unless-stopped on-failure.
Docker rm?
+
Docker rm removes a stopped container.
Docker rmi?
+
Docker rmi removes a Docker image from the local system.
Docker save vs export?
+
Save exports an image as a tar file; export exports a container
filesystem.
Docker secrets create adds a secret to the Swarm cluster.
Docker secrets inspect?
+
Docker secrets inspect shows details of a specific secret.
Docker secrets ls?
+
Docker secrets ls lists all secrets in the Swarm cluster.
Docker secrets?
+
Docker secrets securely store sensitive data like passwords or
API keys for use in containers.
Docker security?
+
Docker security includes using least privilege scanning images
securing secrets and isolating containers.
Docker service update?
+
Docker service update updates a running service in a Swarm
cluster.
Docker service?
+
Docker service runs a container or group of containers across a
Swarm cluster with scaling and update capabilities.
Docker Stack?
+
Docker Stack is used in Docker Swarm to deploy and manage
multi-service applications defined in a Compose file. It supports scaling, rolling
updates, and distributed deployment across nodes.
Docker stop gracefully stops a container; Docker kill forces
termination.
Docker swarm init?
+
Docker swarm init initializes a Docker host as a Swarm manager.
Docker swarm join?
+
Docker swarm join adds a node to a Swarm cluster.
Docker Swarm?
+
Docker Swarm is a native clustering and orchestration tool for
Docker allowing management of multiple Docker hosts.
Docker system df?
+
Docker system df shows disk usage of images containers volumes
and build cache.
Docker tag?
+
Docker tag assigns a new name or version to an image.
Docker top vs exec?
+
Top shows running processes; exec runs a new command in
container.
Docker top?
+
Docker top shows running processes inside a container.
Docker USER?
+
USER sets the username or UID to run the container process.
Docker volume create?
+
Docker volume create creates a new persistent volume for
containers.
Docker volume ls?
+
Docker volume ls lists all Docker volumes on the host.
Docker volume?
+
A Docker volume is a persistent storage mechanism to store data
outside the container filesystem.
Docker WORKDIR?
+
WORKDIR sets the working directory for container commands.
Dockerfile used for?
+
A Dockerfile contains a set of instructions to build a Docker
image automatically. It defines the base image, application code, dependencies,
environment variables, and commands to run the app inside a container.
Kubernetes Namespaces?
+
Namespaces logically isolate clusters into multiple virtual
environments. They help manage resources, security policies, and team separation in
large applications.
Overlay network?
+
Overlay network connects containers across multiple Docker
hosts in a Swarm cluster.
Rolling update in Docker?
+
Rolling update updates service replicas gradually to avoid
downtime.
Scenarios where Java developers use Docker?
+
Docker is used for creating consistent dev environments,
Microservices deployment, CI/CD pipelines, testing distributed systems, isolating
services, and running different Java versions without conflicts.
Restart Policy
+
In Docker, when we talk about policy, it usually refers to the
restart policies of containers.
Always policy:-
+
If container manual is off and always policy is set to on then
container will only start when "docker daemon restart"
Unless-stopped:-
+
If a container is down due to an error and has an
Unless-stopped policy, it will only restart when you "restart docker daemon"
On-failure:-
+
When a container shuts down due to an error and has a
no-failure policy, the container will restart itself.
Max Retry in on-failure Policy (English)
+
When you use the on-failure restart policy in Docker, you can
set a maximum retry count.
Port Mapping
+
® Every Docker container has its own network namespace (like a
mini-computer).
Networking
+
Docker networking is how containers communicate with each
other, with the host machine, and with the outside world (internet).
Volume
+
® By default, anything you save inside a container is
temporary.
Local mount Create a Volume
+
Command:-
Create a Image for Docker Commit Method Commands :-
+
Vim index.html
Dockerfile
+
® A Dockerfile is a text file that contains a set of
instructions to build a Docker Image.
Draw.io / Lucidchart
+
Benefit of using cloud-based diagram tools?
+
No installation required, supports remote collaboration,
version history, and easy sharing.
Can draw.io integrate with jira or confluence?
+
Yes, via plugins, Draw.io diagrams can be embedded in Jira
issues and Confluence pages for collaborative documentation.
Diffbet draw.io and lucidchart?
+
Draw.io is free and open-source; Lucidchart is paid with
advanced collaboration, templates, and integration features.
Draw.io?
+
Draw.io is a free web-based diagramming tool for flowcharts,
org charts, network, and architecture diagrams.
Lucidchart?
+
Lucidchart is a cloud-based diagramming tool similar to Visio,
with collaboration, real-time editing, and integration with apps like Google
Workspace.
Shape formatting in draw.io or lucidchart?
+
Shapes can be customized with colors, borders, shadows, and
labels to improve clarity and visual hierarchy.
To collaborate in lucidchart?
+
Real-time editing, commenting, and version control allow
multiple users to work together on diagrams.
To export diagrams in draw.io?
+
Diagrams can be exported as PNG, JPG, PDF, SVG, or VSDX for
offline use.
You link diagrams to live data?
+
Some tools allow linking shapes to data sources like Google
Sheets, Excel, or databases to reflect dynamic information.
You maintain version history in lucidchart?
+
Lucidchart automatically tracks changes; you can restore or
view previous versions via the revision history panel.
Lazy Loading, Eager Loading, and Explicit Loading?
+
Lazy Loading loads on demand; Eager Loading loads with the
initial query; Explicit Loading loads manually when needed.
LINQ to Entities and LINQ to Objects in EF?
+
LINQ to Entities translates queries to SQL for database; LINQ
to Objects operates on in-memory objects.
POCO and EntityObject?
+
POCO (Plain Old CLR Object) is a simple class without EF
dependency; EntityObject derives from EF base classes and is tightly coupled with
EF.
RowVersion/ConcurrencyToken and Timestamp in EF?
+
Both are used for optimistic concurrency; Timestamp is SQL
Server-specific byte array, ConcurrencyToken can be any property marked for
concurrency.
SaveChanges() and SaveChangesAsync()?
+
SaveChanges() is synchronous; SaveChangesAsync() is
asynchronous and non-blocking.
SingleOrDefault() and FirstOrDefault() in EF?
+
SingleOrDefault() expects exactly one match and throws if
multiple; FirstOrDefault() returns the first match without error if multiple.
TPH and TPT inheritance in EF?
+
TPH uses one table for all types; TPT uses separate table for
each type.
TPH, TPT, and Table-per-Concrete Class inheritance?
+
TPH stores all types in one table; TPT stores each type in
separate table; Table-per-Concrete stores each concrete class in its own table.
DiffBet EF and ADO.NET?
+
EF abstracts SQL into objects (ORM), while ADO.NET requires
manual SQL queries and dataset manipulation.
Different approaches of Entity Framework?
+
Database-First, Model-First, and Code-First approaches.
Eager Loading in EF?
+
Eager Loading retrieves related data along with the main entity
using Include() method.
EF Core async operations?
+
EF Core supports async versions of query and save methods,
improving scalability and non-blocking I/O.
EF Core batch operations?
+
Batch operations execute multiple insert, update, or delete
commands in a single database round-trip.
EF Core cascade delete?
+
Cascade delete automatically deletes dependent entities when
principal entity is deleted.
EF Core Change Tracker?
+
Change Tracker keeps track of entity changes in the context for
insert, update, and delete operations.
EF Core concurrency handling?
+
EF Core uses concurrency tokens or timestamps to detect
conflicting updates and prevent data loss.
EF Core connection pooling?
+
Connection pooling reuses database connections for performance
optimization.
EF Core database seeding?
+
Seeding populates database with initial or test data during
migrations or startup.
EF Core DbContext pooling?
+
DbContext pooling reuses context instances to reduce memory
allocation and improve performance in high-load applications.
EF Core migrations rollback?
+
Migrations rollback allows reverting database schema to
previous state using Remove-Migration or Update-Database commands.
EF Core owned entity?
+
Owned entity is a dependent entity type whose lifecycle is tied
to the owner and shares the same table.
EF Core owned types vs complex types?
+
Owned types are dependent entities with lifecycle tied to
owner; complex types in EF6 were similar but without EF Core features.
EF Core query types (keyless entity)?
+
Keyless entities represent database views or tables without
primary keys, used for read-only queries.
EF Core shadow key?
+
A key property not defined in CLR class but maintained in EF
model for relationships.
EF Core shadow property?
+
Property not defined in class but maintained in EF Core model
for mapping or foreign keys.
EF Core table splitting?
+
Table splitting stores multiple entity types in the same
database table.
EF Core tracking vs no-tracking queries?
+
Tracking queries track changes for update; no-tracking queries
improve read performance without change tracking.
EF Core value conversion?
+
Value conversion transforms property values between CLR type
and database type during read/write operations.
Entity Framework?
+
EF is an ORM for .NET that maps database tables to C# classes,
enabling developers to work with data as objects without writing SQL.
Execute raw SQL in EF?
+
Use context.Database.SqlQuery() for queries or
context.Database.ExecuteSqlCommand() for commands.
Explicit Loading in EF?
+
Explicit Loading loads related data manually using Load()
method on navigation properties.
Foreign key property in EF?
+
Foreign key property stores the key of a related entity to
define relationships.
Keyless entity type in EF Core?
+
Keyless entity type does not have a primary key and is used for
read-only queries like views.
Lazy Loading in EF?
+
Lazy Loading delays loading of related data until it is
accessed for the first time.
Migration in EF Code-First?
+
Migration is a feature that allows updating the database schema
incrementally when the model changes.
Model-First approach in EF?
+
Model-First approach allows creating the EF model visually, and
EF generates the database schema from it.
Navigation properties?
+
Properties in entities used to represent relationships between
tables (one-to-one, one-to-many, many-to-many).
Navigation property in EF?
+
Navigation property represents a relationship between two
entities, allowing navigation from one entity to another.
No-Tracking query in EF?
+
No-Tracking query does not track changes to entities and
improves performance for read-only operations using AsNoTracking().
Optimistic concurrency in EF?
+
Optimistic concurrency allows multiple users to work on data
and checks for conflicts when saving changes.
Owned entity type in EF Core?
+
Owned entity type shares the same table with owner entity and
cannot exist independently.
Shadow property in EF Core?
+
A property maintained by EF model but not defined in CLR class,
used for tracking or foreign keys.
Shadow property in EF?
+
Shadow property is a property in EF model not defined in CLR
class but maintained in the EF model and database.
Tracking query in EF?
+
A tracking query tracks changes to entities retrieved from the
database so that changes can be persisted back.
Types of EF approaches?
+
Database First: Generates classes from an existing DB, Model
First: Create model, then generate DB, Code First: Classes define schema, DB
generated automatically
Everything About Devops
+
We need DevOps
+
To fulfil the need of delivering more and faster and
betterapplication to meet more and more demands of users, we need DevOps. DevOps
helpsdeployment to happen really fast compared to any other traditional tools.
Mention the key aspects or principle behindDevOps
+
The key aspects or principle behind DevOps is : Infrastructure
as a Code Continuous Integration ContinuousDeployment Automation Continuous
Monitoring Security
Version ControlSystem (VCS) is a software that helpssoftware
developers to work together and maintain a complete his tory of theirwork. Some of
the feature of VCS as follows: Allow developers towok simultaneously Does not allow
overwriting on each other changes. Maintainthe his tory of every version. There are
two types of Version ControlSystems: Central Version ControlSystem, Ex: Git,
Bitbucket Dis tributed/Decentralized Version ControlSystem, Ex:SVN
Git and explain the difference between Git andSVN
+
Git is a source code management (SCM) toolwhich handlessmall as
well as large projects with efficiency. It is basically used to storeour
repositories in remote server such as GitHub. GIT SVN Git is a Decentralized Version
ControlTool SVN is a Centralized Version ControlTool Git contains the local repo as
well asthe full his tory of the whole project on all the developershard drive, so if
there is a server outage , you can easilydo recovery from your team mates local git
repo. SVN relies only on the central server tostore all the versions of the project
file Push and pull operations are fast Push and pull operations are slowercompared
to Git It belongs to 3 rd generation Version ControlTool It belongs to 2 nd
generation Version Controltools Client nodes can share the entirerepositories on
their local system Version his tory is stored on server-siderepository Commits can
be done offline too Commits can be done only online Work are shared automatically
bycommit Nothing is shared automatically
Language is used in Git
+
Git is written in C language, and since its written in
Clanguage its very fast and reduces the overhead of runtimes.
SubGit
+
SubGit is a toolfor migrating SVN to Git. It creates awritable
Git mirror of a local or remote Subversion repository and uses bothSubversion and
Git if you like.
Clone a Git repository via Jenkins
+
First, we must enter the e-mail and user name for yourJenkins
system, then switch into your job directory and execute the “gitconfig” command.
Advantages of Ansible
+
Agentless, it doesn’t require any extrapackage/daemons to be
installed Very low overhead Good performance Idempotent Very Easy to learn
Declarative not procedural
Use of Ansible
+
Ansible is mainly used in IT infrastructure to manage ordeploy
applications to remote nodes. Let’s say we want to deploy oneapplication in 100’s of
nodes by just executing one command, then Ansibleis the one actually coming into the
picture but should have some knowledge onAnsible script to understand or execute the
same.
Difference between Ansible Playbookand Roles
+
Roles Playbooks Roles are reusable subsets of aplay. Playbooks
contain Plays. A set of tasks for accomplis hing certainrole. Mapps among hosts and
roles. Example: common, webservers. Example: site.yml,
fooservers.yml,webservers.yml.
See a lis t of all the ansible_variables
+
Ansible by default gathers “facts” about themachines, and these
facts can be accessed in Playbooks and in templates. To seea lis t of all the facts
that are available about a machine, you can run the“setup” module as an ad-hoc
action: Ansible -m setup hostname This will print out a dictionary of all the facts
that areavailable for that particular host.
Docker Container
+
Docker Container is the running instance of DockerImage.
Can we consider DevOps as Agile methodology
+
Of Course, we can!! The only difference between
agilemethodology and DevOps is that, agile methodology is implemented only
fordevelopment section and DevOps implements agility on both development as well
asoperations section.
Advantages of using Git
+
Data redundancy and replication High availability Only one. git
directory per repository Superior dis k utilization and network
performanceCollaboration friendly Git can use any sort of projects.
Difference between grep -i and grep -v
+
I ignore alphabet difference V accept this value ex) ls |grep
-i docker Dockerfile docker.tar.gz ls | grep -v docker Desktop Dockerfile
DocumentsDownloads You can’t see anything with name docker.tar.gz Q1) How can you
define particular space to the file This feature is generally used to give the swap
space to theserver. Lets say in below machine I have to create swap space of
1GBthen, dd if=/dev/zero of=/swapfile1 bs=1G count=1
Jenkins Pipeline
+
Jenkins Pipeline (or simply “Pipeline”) is asuite of plugins
which supports implementing and integrating continuous deliverypipelines into
Jenkins.
Stop and restart the Docker container
+
To stop the container: docker stop container ID Now to restart
the Docker container: docker restartcontainer ID
Platforms does Docker run on
+
Docker runs on only Linux and Cloud platforms: Ubuntu 12.04
LTS+ Fedora 20+ RHEL 6.5+ CentOS 6+ Gentoo ArchLinux openSUSE 12.3+ CRUX 3.0+ Cloud:
Amazon EC2 Google Compute Engine Microsoft Azure Rackspace Note that Docker does not
run on Windows or Mac forproduction as there is no support, yes you can use it for
testing purpose evenin windows
Tools used for docker networking
+
For docker networking we generally use kubernets and
dockerswarm.
Docker compose
+
Lets say you want to run multiple docker container, at thattime
you have to create the docker compose file and type the commanddocker-compose up. It
will run all the containers mentioned in docker composefile.
Commit object contain
+
Commit object contain the following components: It contains a
set of files, representing the state of aproject at a given point of time reference
to parent commit objects An SHAI name, a 40-character string that uniquely
identifiesthe commit object (also called as hash).
Explain the difference between git pull and gitfetch
+
Git pull command basically pulls any new changes or commitsfrom
a branch from your central repository and updates your target branch inyour local
repository. Git fetch is also used for the same purpose, but itsslightly different
form Git pull. When you trigger a git fetch, it pulls all newcommits from the
desired branch and stores it in a new branch in your localrepository. If we want to
reflect these changes in your target branch, git fetchmust be followed with a git
merge. Our target branch will only be updated aftermerging the target branch and
fetched branch. Just to make it easy for us,remember the equation below: Git pull =
git fetch + git merge
Know in Git if a branch has already beenmerged into master
+
git branch –merged The above command lis ts the branches that
have been mergedinto the current branch. git branch –no-merged this command lis ts
the branches that have not beenmerged.
‘Staging Area’ or‘Index’ in GIT
+
Before committing a file, it must be formatted and reviewedin
an intermediate area known as ‘Staging Area’ or ‘IndexingArea’. #git add
Git stash drop
+
Git ‘stash drop’ command is basically used toremove the stashed
item. It will basically remove the last added stash item bydefault, and it can also
remove a specific item if you include it as anargument. I have provided an example
below: If you want to remove any particular stash item from thelis t of stashed
items you can use the below commands: git stash lis t: It will dis play the lis t of
stashed items asfollows: stash@{0}: WIP on master: 049d080 added the index
filestash@{1}: WIP on master: c265351 Revert “added files” stash@{2}:WIP on master:
13d80a5 added number to log
Function of ‘gitconfig’
+
Git uses our username to associate commits with an identity.The
git config command can be used to change our Git configuration, includingyour
username. Suppose you want to give a username and email id toassociate commit with
an identity so that you can know who has made a commit.For that I will use: git
config –global user.name “Your Name”:This command will add your username. git config
–global user.email “Your E-mailAddress”: This command will add your email id.
Create a repository in Git
+
To create a repository, you must create a directory for
theproject if it does not exis t, then run command “git init”. Byrunning this
command .git directory will be created inside the projectdirectory.
Describe the branching strategies you haveused
+
Generally, they ask this question to understand yourbranching
knowledge Feature branching This model keeps all the changes for a feature inside of
abranch. When the feature branch is fully tested and validated by automatedtests,
the branch is then merged into master. Task branching In this task branching model
each task is implemented on itsown branch with the task key included in the branch
name. It is quite easy tosee which code implements which task, just look for the
task key in the branchname. Release branching Once the develop branch has acquired
enough features for arelease, then we can clone that branch to form a Release
branch. Creating this release branch starts the next release cycle, so no new
features can be addedafter this point, only bug fixes, documentation generation, and
otherrelease-oriented tasks should go in this branch. Once it’s ready to ship,the
release gets merged into master and then tagged with a version number. Inaddition,
it should be merged back into develop branch, which may haveprogressed since the
release was initiated earlier.
Jenkins
+
Jenkins is an open source continuous integration toolwhichis
written in Java language. It keeps a track on version controlsystem and toinitiate
and monitor a build system if any changes occur. It monitors the wholeprocess and
provides reports and notifications to alert the concern team.
Difference between Maven, Ant andJenkins
+
Maven and Ant are Build Technologies whereas Jenkins is
acontinuous integration(CI/CD) tool.
Explain what is continuous integration
+
When multiple developers or teams are working on
differentsegments of same web application, we need to perform integration test
byintegrating all the modules. To do that an automated process for each piece ofcode
is performed on daily bases so that all your code gets tested. And this whole
process is termed as continuous integration.
Relation between Hudson andJenkins
+
Hudson was the earlier name of current Jenkins. After someis
sue faced, the project name was changed from Hudson to Jenkins.
Advantages of Jenkins
+
Advantage of using Jenkins Bug tracking is easy at early stage
in developmentenvironment. Provides a very large numbers of plugin support.
Iterative improvement to the code, code is basically dividedinto small sprints.
Build failures are cached at integration stage. For each code commit changes an
automatic build reportnotification get generated. To notify developers about build
report success or failure,it can be integrated with LDAP mail server. Achieves
continuous integrationagile development and test-driven development environment.
With simple steps, maven release project can also beautomated.
Steps to set up Jenkins job as follows: Select new item from
the menu. After that enter a name for the job (it can be anything) andselect
free-style job. Then click OK to create new job in Jenkinsdashboard. The next page
enables you to configure your job, andit’s done.
Your daily activities in your currentrole
+
Working on JIRA Tickets Builds and Deployments Resolving is
sues when builds and deployments fails bycoordinating and collaborating with the dev
team Infrastructuremaintenance Monitoring health of applications
Challenges you faced in recenttimes
+
I need to implement trending technologies like Docker
toautomate the configuration management activities in my project by showingPOC.
Build and deployment failures you got andhow you resolved
those
+
I use to get most of the time out of memory is sue. So Ifixed
this is sue by restarting the server which is not best practice. I did thepermanent
fix by increase the Perm Gen Space and Heap Space.
I want a file that consis ts of last 10 lines of thesome other
file
+
Tail -10 filename >filename
Echo $
+
Q51) I want to get the information from file which consis tsof
the word “GangBoard” grep “GangBoard” filename Q52) I want to search the files with
the name of“GangBoard” find / -type f -name “*GangBoard*”
Write a shell script to print only primenumbers
+
prime.sh echo "1" i=3j=300 flag=0 tem=2 echo "1"while [ $i -ne
$j ] do temp=`echo $i` while [ $temp -ne $tem ] do temp=`expr $temp - 1` n=`expr $i
% $temp` if [ $n -eq 0 -a $flag -eq 0 ] then flag=1 fi done if [ $flag -eq 0 ] then
else fi echo $i flag=0 i=`expr $i + 1` done
Pass the parameters to the script and Iget those parameters
+
Scriptname.sh parameter1 parameter2 I will use $* to get
theparameters.
Default file permis sions for the file andhow can I modify it
+
Default file permis sions are : rw-r—r— If I want to change the
default file permis sions I need touse umask command ex: umask 666
Do the releases
+
There are some steps to follow. Create a check lis t Create a
release branch Bump the version Merge release branch to master & tag it. Use a Pull
request to merge the release merge Deploy masterto Prod Environment Merge back into
develop & delete release branch Changelog generation Communicating with stack
holders Grooming the is suetracker
Automate the whole build and releaseprocess
+
Check out a set of source code files. Compile the code and
report on progress along the way. Runautomated unit tests against successful
compiles. Create an installer. Publis h the installer to a download site, and notify
teamsthat the installer is available. Run the installer to create an
installedexecutable. Run automated tests against the executable. Report theresults
of the tests. Launch a subordinate project to update standard libraries.Promote
executables and other files to QA for further testing. Deploy finis hed releases to
production environments, such asWeb servers or CD manufacturing. The above process
will be done by Jenkins by creating thejobs. Q) I have 50 jobs in the Jenkins dash
board , I want tobuild at a time all the jobs In Jenkins there is a plugin called
build after otherprojects build. We can provide job names over there and If one
parent job runthen it will automatically run the all other jobs. Or we can use Pipe
linejobs.
I integrate all the tools with Jenkins
+
I have to navigate to the manage Jenkins and then
globaltoolconfigurations there you have to provide all the details such as Git URL
,Java version, Maven version , Path etc.
Install Jenkins via Docker
+
The steps are: Open up a terminal window. Download the
jenkinsci/blueocean image & run it as acontainer in Docker using the following
docker run command:(https://docs.docker.com/engine/reference/commandline/run/)
docker run \ -u root \ –rm \ -d \ -p 8080:8080 \ -p50000:50000 \ -v
jenkins-data:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock
\jenkinsci/blueocean Proceed to the Post-installation setup
wizard(https://jenkins.io/doc/book/installing/#setup-wizard) Accessing
theJenkins/Blue Ocean Docker container docker exec -it jenkins-blueoceanbash
Accessing the Jenkins console log through Docker logsdockerlogs Accessing the
Jenkins home directorydockerexec -it bash
Did you ever participated in Prod DeploymentsIf yeswhat is the
procedure
+
Yes I have participated, we need to follow the followingsteps
in my point of view Preparation & Planning : What kind of system/technologywas
supposed to run on what kind of machine The specifications regarding theclustering
of systems How all these stand-alone boxes were going to talk to eachother in a
foolproof manner Production setup should be documented to bits. It needs tobe neat,
foolproof, and understandable. It should have all a system configurations, IP
addresses,system specifications, & installation instructions. It needs to be
updatedas & when any change is made to the production environment of thesystem
My application is not coming up for some reasonHowcan you
bring it up
+
We need to follow the steps Network connection The Web Server
is not receiving users’s requestChecking the logs Checking the process id’s whether
services are runningor not The Application Server is not receiving
user’srequest(Check the Application Server Logs and Processes) A network
level‘connection reset’ is happening somewhere.
Did you automate anything in your projectPleaseexplain
+
Yes I have automated couple of things such as Passwordexpiry
automation Deleting the older log files Code quality threshold violations etc.
IaCHow you will achieve this
+
Infrastructure as Code (IaC) is the management ofinfrastructure
(networks, virtual machines, load balancers, and connectiontopology) in a
descriptive model, using the same versioning as DevOps team usesfor source code.
This will be achieved by using the tools such as Chef, Puppetand Ansible etc.
Multifactor authenticationuse ofit
+
Multifactor authentication (MFA) is a security system
thatrequires more than one method of authentication from independent categories
ofcredentials to verify the user’s identity for a login or othertransaction.
Security for every enterpris e user — end &privileged users, internal and external
Protect across enterpris e resources — cloud &on-prem apps, VPNs, endpoints,
servers, privilege elevation and more Reduce cost & complexity with an integrated
identityplatform
I want to copy the artifacts from one location toanother
location in cloudHow
+
Create two S3 buckets, one to use as the source, and theother
to use as the destination and then create policies.
I modify the commit message in git
+
I have to use following command and enter the requiredmessage.
Git commit –amend Q) avoid the waiting time for the triggeredjobs in Jenkins. First
I will check the Slave nodes capacity, If it is fullyloaded then I will add the
slave node by doing the following process. Go to the Jenkins dashboard -> Manage
Jenkins ->ManageNodes Create the new node a By giving the all required fields and
launch the slavemachine as you want.
Pros and Cons of Ansible
+
Pros: Open Source Agent less Improved efficiency , reduce cost
Less Maintenance Easy to understand yaml files Cons: Underdeveloped GUI with limited
features Increased focus on orchestration over configurationmanagement SSH
communication slows down in scaled environments
Handle the merge conflicts in git
+
Follow the steps Create Pull request Modify according to the
requirement by sitting withdevelopers Commit the correct file to the branch Merge
the current branch with master branch.
I want to delete 10 days older log filesHow canI
+
There is a command in unix to achieve this task find -mtime +10
-name “*.log” -exec rm -f {} \; 2>/dev/null
Difference among chef, puppet andansible
+
Chef Puppet Ansible Interoperability Works Only on Linux/Unix
Works Only on Linux/Unix Supports Windows but server should beLinux/U Conf. Language
It uses Ruby Puppet DSL YAML (Python) Availability Primary Server and Backup Server
Multi Master Architecture Single Active Node
Get the Inventory variables defined for thehost
+
We need to use the following command Ansible – m debug-
a“var=hostvars[‘hostname’]”localhost(10.92.62.215)
Take backup for Jenkins
+
Copy JENKINS_HOME directory and “jobs” directoryto replicate it
in another server
Deploy docker container to aws
+
Amazon provides the service called Amazon Elastic
ContainerService; By using this creating and configuring the task definition and
serviceswe will launch the applications.
I want to change the default port number of apachetomcatHow
+
Go to the tomcat folder and navigate to the conf folderthere
you will find a server.xml file. You can change connector port tag as youwant.
In how many ways you can install the Jenkins
+
We can install Jenkins in 3 Ways By downloading Jenkinsarchive
file By running as a service Java –jar Jenkins.war By deploying Jenkins.war to the
webapps folder intomcat.
Run Jenkins job from command line
+
We have a Jenkins CLI from there we need to use the curlcommand
curl -X POST -u YOUR_USER:YOUR_USER_PASSWORD
http://YOUR_JENKINS_URL/job/YOUR_JOB/build
Do tagging in git
+
We have following command to create tags in git Git tagv0.1
Connect a container to a network when itstarts
+
We need to use a following command docker run -itd
–network=multi-host-networkbusybox
Do code commit and code deploy incloud
+
Create a deployment environment Get a copy of the samplecode
Create your pipeline Activate your pipeline Commit a change and update the App.
Access variable names in Ansible
+
Using hostvars method we can access and add the variableslike
below {{ hostvars[inventory_hostname][‘ansible_’ +
which_interface][‘ipv4’][‘address’] }}
Zones the Version controlcan acquaintwith get proficient
DevOps practice
+
A clearly fundamental region of Version Controlis Sourcecode
the executives, Where each engineer code ought to be pushed to a typicalstorehouse
for keeping up assemble and dis charge in CI/CD pipelines. Another territory can be
Version controlFor Adminis tratorswhen they use Infrastructure as A Code (IAC)
apparatuses and rehearses forkeeping up The Environment setup. Another Area of
Version Controlframework Can be ArtifactoryManagement Using Repositories like Nexus
and DockerHub
Opensource apparatuses support DevOps
+
Opensource devices dominatingly utilized by any
associationadjusting (or) embraced DevOps pipelines in light of the fact thatdevops
accompanied an attention on robotization in different parts ofassociation
manufacture and dis charge and change the executives and furthermoreframework the
board zones. So creating or utilizing a solitary apparatus is unthinkableand
furthermore everything is fundamentally an experimentation period ofadvancement and
furthermore coordinated chops down the advantage of building upa solitary device ,
so opensource devices were accessible available practicallyspares each reason and
furthermore gives association a choice to assess thedevice dependent on their need.
Dis tinction among Ansible and chef(or)manikin
+
Ansible is Agentless design the board device, where manikinor
gourmet expert needs operator should be kept running on the specialis t huband
culinary specialis t or manikin depends on draw demonstrate, where yourcookbook or
show for gourmet expert and manikin separately from the ace will bepulled by the
operator and ansible uses ssh to convey and it gives informationdriven guidelines to
the hubs should be overseen , progressively like RPCexecution, ansible utilizations
YAML scripting, though manikin (or) culinaryspecialis t is worked by ruby uses their
own DSL .
Jinja2 templating in ansible playbooks andtheir utilization
+
Jinja2 templating is the Python standard for templating
,consider it like a sed editorial manager for Ansible , where it very well may
beutilized is when there is a requirement for dynamic change of any config recordto
any application like consider mapping a MySQL application to the IP addressof the
machine, where it is running, it can’t be static , it needsmodifying it
progressively at runtime. Arrangement The vars inside the supports are supplanted by
ansible whilerunning utilizing layout module.
Requirement for sorting out playbooks asthe job, is it vital
+
Arranging playbooks as jobs , gives greater clarity
andreusability to any plays , while consider an errand where MySQL establis
hmentought to be done after the evacuation of Oracle DB , and another prerequis ite
is expected to introduce MySQL after java establis hment, in the two cases we haveto
introduce MySQL , yet without jobs need to compose playbooks independentlyfor both
use cases , yet utilizing jobs once the MySQL establis hment job is madecan be used
any number of times by summoning utilizing rationale in site.yaml. No, it is n’t
important to make jobs for eachsituation, however making jobs is the best practice
in Ansible.
Fundamental dis service of Dockerholders
+
As the lifetime of any compartments is while pursuing aholder
is wrecked you can’t recover any information inside a compartment,the information
inside a compartment is lost perpetually, however tenaciouscapacity for information
inside compartments should be possible utilizingvolumes mount to an outer source
like host machine and any NFS drivers.
Docker motor and docker form
+
Docker motor contacts the docker daemon inside the machineand
makes the runtime condition and procedure for any compartment, docker makeconnects a
few holders to shape as a stack utilized in making application stackslike LAMP,
WAMP, XAMP
Different modes does a holder can berun
+
Docker holder can be kept running in two modes Connected: Where
it will be kept running in the forefront ofthe framework you are running, gives a
terminal inside to compartment when– t choice is utilized with it, where each log
will be diverted to stdoutscreen. is olates: This mode is typically kept running
underway,where the holder is confined as a foundation procedure and each yield
inside acompartment will be diverted log recordsinside/var/lib/docker/logs/ /
andwhich can be seen by docker logs order.
Yield of docker assess order will be
+
Docker examines will give yield in JSONposition, contains
subtleties like the IP address of the compartmentinside the docker virtual scaffold
and volume mount data and each other dataidentified with host (or) holder explicit
like the basic document driverutilized, log driver utilized. docker investigate
[OPTIONS] NAME|ID [NAME|ID…]Choices Name, shorthand Default Description group, – f
Format the yield utilizing the given Golayout measure, – s Dis play all out document
sizes if thesort is the compartment type Return JSON for a predefined type
Order can be utilized to check the assetusage by docker
holders
+
Docker details order can be utilized to check the assetusage of
any docker holder, it gives the yield practically equivalent to Topdirection in
Linux, it shapes the base for compartment asset observinginstruments like a counsel,
which gets yield from docker details order. docker details [OPTIONS] [CONTAINER…]
Choices Name, shorthand Default Description all, – a Show all holders (default
demonstrates simplyrunning) group Pretty-print pictures utilizing a Go layout
no-stream Dis able spilling details and just draw the mainoutcome no-trunc Do not
truncate yield
Execute some errand (or) play on localhost justwhile executing
playbooks on various has on an ansible
+
In ansible, there is a module called delegate_to, in this
module area give the specific host (or) has where your errands (or) assignmentshould
be run. undertakings: name: ” Elasticsearch Hitting”
Where a set_fact sets the incentive for a factor at one timeand
stays static, despite the fact that the esteem is very powerful and varscontinue
changing according to the esteem continues changing for thevariable. assignments:
set_fact: fact_time: “Truth: ” troubleshoot: var=fact_timeorder: rest 2
troubleshoot: var=fact_time assignments: name: queries in factors versus queries in
realities has:localhost vars: var_time: “Var: ” Despite the fact that the query for
the date has beenutilized in both the cases, wherein the vars are utilized it
modifies dependenton an opportunity to time each time executed inside the playbook
lifetime. Bethat as it may, Fact dependably continues as before once query is finis
hed
Query in ansible and what are query modulesbolstered by
ansible
+
Query modules enable access to information in Ansible
fromoutside sources. These modules are assessed on the Ansible controlmachine andcan
incorporate perusing the filesystem yet in addition reaching outsideinformation
stores and adminis trations. Organization is {lookup{‘ ’,' ’}}A portion of the query
modules upheld by ansible are Document pipe redis jinja layouts etcd kv store
Erase the docker pictures put away atyour nearby machine and
do it for every one of the pictureswithout a moment’s delay
+
The direction docker RMI can be utilized toerase the docker
picture from nearby machine, though a few pictures may shouldbe constrained in light
of the fact that the picture might be utilized by someother holder (or) another
picture , to erase pictures you can utilize the mix ofdirections by docker RMI
$(docker pictures – q), where docker pictures willgive the docker picture names, to
get just the ID of docker pictures just , weare utilizing – q switch with docker
pictures order.
Organizers in the Jenkins establis hmentand their employments
+
JENKINS_HOME – which will be/$JENKINS_USER/.jenkins itis the
root envelope of any Jenkins establis hment and it contains subfolderseach for
various purposes. employments/ – Folder contains all the data prettymuch every one
of the occupations arranged in the Jenkins example. Inside employments/, you will
have the envelope made foreach activity and inside those organizers, you will have
fabricate organizers asindicated by each form numbers each form will have its log
records, which we seein Jenkins web support. Modules/ – where all your modules will
berecorded. Workspace/ – this will be available to hold all theworkspace documents
like your source code pulled from SCM.
Approaches to design Jenkinsframework
+
Jenkins can be designed in two different ways Web: Where there
is a choice called design a framework, intheir area, you can make all setup changes.
Manual on filesystem: Where each change should likewis e bepossible
straightforwardly on the Jenkins config.xml document under the Jenkinsestablis hment
catalog, after you make changes on the filesystem, you have torestart your Jenkins,
either can do it specifically from terminal (or) you canutilize Reload setup from
plate under oversee Jenkins menu or you canhit/restart endpoint straightforwardly.
Job Of HTTP REST API in DevOps
+
As DevOps is absolutely centers around Automating yourframework
and gives changes over the pipeline to various stages like an everyCI/CD pipeline
will have stages like form, test, mental soundness test, UAT,Deployment to Prod
condition similarly as with each phase there are diversedevices is utilized and dis
tinctive innovation stack is dis played and thereshould be an approach to
incorporate with various instrument for finis hing anarrangement toolchain, there
comes a requirement for HTTP API , where eachapparatus speaks with various devices
utilizing API , and even client canlikewis e utilize SDK to interface with various
devices like BOTOX for Python tocontact AWS API’s for robotization dependent on
occasions , these days itsnot cluster handling any longer , it is generally occasion
drivenpipelines
Q0) What are Micro services, and how they controlproficient
DevOps rehearses
+
Where In conventional engineering , each application is stone
monument application implies that anything is created by a gathering ofdesigners,
where it has been sent as a solitary application in numerous machinesand presented
to external world utilizing load balances, where the microservices implies
separating your application into little pieces, where eachpiece serves the dis
tinctive capacities expected to finis h a solitary exchangeand by separating ,
designers can likewis e be shaped to gatherings and each bitof utilization may
pursue diverse rules for proficient advancement stage, as aresult of spry
improvement ought to be staged up a bit and each adminis trationutilizes REST API
(or) Message lines to convey between anotheradminis tration. So manufacture and
arrival of a non-strong form may notinfluence entire design, rather, some usefulness
is lost, that gives theconfirmation to productive and quicker CI/CD pipelines and
DevOpsPractices.
Labels in Jenkins and where it tends tobe used
+
Similarly as with CI/CD arrangement should be concentrated
,where each application in the association can be worked by a solitary CI/CDserver ,
so in association there might be various types of utilization likejava, c#,.NET and
so forth, likewis e with microservices approach yourprogramming stack is inexactly
coupled for the task , so you can have Labeled inevery hub and select the choice
Only assembled employments while namecoordinating this hub, so when a manufacture is
planned with the mark of the hubpresent in it, it hangs tight for next agent in that
hub to be accessible,despite the fact that there are different agents in hubs.
Continuous Monitoring and why checking is basic in DevOps
+
DevOps draws out each association capacity of fabricate anddis
charge cycle to be a lot shorter with an idea of CI/CD, where each change is
reflected into generation conditions fastly, so it should be firmly observed toget
client input. So the idea of constant checking has been utilized to assessevery
application execution progressively (at any rate Near Real Time) , whereevery
application is produced with application execution screen specialis tsperfect and
the granular dimension of measurements are taken out like JVMdetails and even
practical savvy measurements inside the application canlikewis e be spilled out
progressively to Agents , which thusly provides for anybackend stockpiling and that
can be utilized by observing groups in dashboardsand cautions to get persis tently
screen the application.
Give a few instances of persis tent observinginstruments
+
Where numerous persis tent observing instruments areaccessible
in the market, where utilized for an alternate sort of use andsending model Docker
compartments can be checked by consultant operator,which can be utilized by
Elasticsearch to store measurements (or) you canutilize TICK stack (Telegraph,
influxdb, Chronograph, Capacitor) for eachframework observing in NRT(Near Real Time)
and You can utilize Logstash (or)Beats to gather Logs from framework , which thusly
can utilize Elasticsearch asStorage Backend can utilize Kibana (or) Grafana as vis
ualizer. The framework observing should be possible by Nagios andIcinga.
Microservices, and how they controlproductive DevOps rehearses
+
Where In conventional engineering , each application is stone
monument application implies that anything is created by a gathering ofdesigners,
where it has been conveyed as a solitary application in numerousmachines and
presented to external world utilizing load balancers, where themicroservices implies
separating your application into little pieces, where eachpiece serves the diverse
capacities expected to finis h a solitary exchange andby separating , engineers can
likewis e be shaped to gatherings and each bit ofutilization may pursue dis tinctive
rules for proficient advancement stage, onaccount of light-footed improvement ought
to be staged up a bit and eachadminis tration utilizes REST API (or) Message lines
to impart between anotheradminis tration. So manufacture and arrival of a non-hearty
variant may notinfluence entire design, rather, some usefulness is lost, that gives
theaffirmation to proficient and quicker CI/CD pipelines and DevOpsPractices.
Manners in which that a pipeline can bemade in Jenkins
+
There are two different ways of a pipeline can be made
inJenkins Scripted Pipelines: Progressively like a programming approach
Explanatorypipelines: DSL approach explicitly to make Jenkins pipelines. The
pipeline ought to be made in Jenkins record and the areacan either be in SCM or
neighborhood framework. Definitive and Scripted Pipelines are developed in a
generalsense in an unexpected way. Explanatory Pipeline is a later element of
JenkinsPipeline which: gives more extravagant linguis tic highlights over
ScriptedPipeline sentence structure, and is intended to make composing and
perusingPipeline code simpler.
Labels in Jenkins and where it very wellmay be used
+
Likewis e with CI/CD arrangement should be incorporated ,where
each application in the association can be worked by a solitary CI/CDserver , so in
association there might be various types of use like java,c#,.NET and so forth,
similarly as with microservices approach your programmingstack is inexactly coupled
for the undertaking , so you can have Labeled inevery hub and select the alternative
Only assembled occupations while markcoordinating this hub, so when a fabricate is
booked with the name of the hubpresent in it, it sits tight for next agent in that
hub to be accessible,despite the fact that there are different agents in hubs.
Utilization of Blueocean inJenkins
+
Blue Ocean reexamines the client experience of Jenkins.Planned
starting from the earliest stage for Jenkins Pipeline, yet at the sametime good with
free-form occupations, Blue Ocean lessens mess and expandsclearness for each
individual from the group. It gives modern UI to recognize each phase of the
pipelineand better pinpointing for is sues and rich Pipeline proofreader
forfledglings.
Callback modules in ansible, give a fewinstances of some
callback modules
+
Callback modules empower adding new practices to Ansiblewhen
reacting to occasions. As a matter of course, callback modules controlthegreater
part of the yield you see when running the direction line programs, yetcan likewis e
be utilized to include an extra yield, coordinate with differentinstruments and
marshall the occasions to a capacity backend. So at whateverpoint a play is executed
and after it delivers a few occasions, that occasionsare imprinted onto Stdout
screen, so callback module can be put into anycapacity backend for log handling.
Precedent callback modules are ansible-logstash, where eachplaybook execution is
gotten by logstash in the JSON position and can beincorporated some other backend
source like elasticsearch.
Scripting dialects can be utilized inDevOps
+
As with scripting dialects, the fundamental shell scriptingis
utilized to assemble ventures in Jenkins pipelines and python contents can
beutilized with some other instruments like Ansible.
For what reason is each instrument in DevOps is generally has
some DSL (Domain Specific Language)
+
Devops is a culture created to address the necessities oflithe
procedure, where the advancement rate is quicker ,so sending shouldcoordinate its
speed and that needs activities group to arrange and work withdev group, where
everything can computerize utilizing content based , however itfeels more like tasks
group than , it gives chaotic association of anypipelines, more the utilization
cases , more the contents should be composed ,so there are a few use cases, which
will be sufficient to cover the requirementsof light-footed are taken and
apparatuses are made by that and customization canoccur over the device utilizing
DSL to mechanize the DevOps practice and Infrathe board.
Mis ts can be incorporated with Jenkinsand utilization cases
+
Jenkins can be coordinated with various cloud suppliers
forvarious use cases like dynamic Jenkins slaves, Deploy to cloudconditions. A
portion of the cloud can be incorporated are AWS Purplis h blue Google Cloud
OpenStack
Docker volumes and what sort of volume oughtto be utilized to
accomplis h relentless capacity
+
Docker volumes are the filesystem mount focuses made byclient
for a compartment or a volume can be utilized by numerous holders, andthere are dis
tinctive sorts of volume mount accessible void dir, Post mount, AWSupheld lbs
volume, Azure volume, Google Cloud (or) even NFS, CIFS filesystems,so a volume ought
to be mounted to any of the outer drives to accomplis hdetermined capacity, in light
of the fact that a lifetime of records insidecompartment, is as yet the holder is
available and if holder is erased, theinformation would be lost.
Artifacts store can be incorporated withJenkins
+
Any sort of Artifacts vault can be coordinated with
Jenkins,utilizing either shell directions (or) devoted modules, some of them are
Nexus,Jfrog.
Portion of the testing apparatuses thatcan be coordinated with
Jenkins and notice their modules
+
Sonar module – can be utilized to incorporate testingof Code
quality in your source code. Execution module – this can beutilized to incorporate
JMeter execution testing. Junit – to dis tribute unit test reports. Selenium module
– can be utilized to incorporate withselenium for computerization testing.
Manufacture triggers accessible inJenkins
+
Fabricates can be run physically (or) either can naturallybe
activated by various sources like Webhooks- The webhooks are API calls from SCM, at
whateverpoint a code is submitted into a vault (or) should be possible for
explicitoccasions into explicit branches. Gerrit code survey trigger-Gerrit is an
opensource codeaudit instrument, at whatever point a code change is endorsed after
auditconstruct can be activated. Trigger Build Remotely – You can have remote
contentsin any machine (or) even AWS lambda capacities (or) make a post demand
totrigger forms in Jenkins. Calendar Jobs-Jobs can likewis e be booked like
Cronoccupations. Survey SCM for changes – Where your Jenkins searchesfor any
progressions in SCM for the given interim, if there is a change, amanufacture can be
activated. Upstream and Downstream Jobs-Where a construct can beactivated by another
activity that is executed already.
Version controlDocker pictures
+
Docker pictures can be form controlled utilizing Tags, whereyou
can relegate the tag to any picture utilizing docker tag order. Furthermore, on the
off chance that you are pushing any docker centerlibrary without labeling the
default label would be doled out which is mostrecent, regardless of whether a
picture with the most recent is available, itindicates that picture without the tag
and reassign that to the most recent pushpicture.
Utilization of Timestamper module inJenkins
+
It adds Timestamp to each line to the comfort yield of
theassemble.
You ought not execute an expand on ace
+
You can run an expand on ace in Jenkins , yet it is n’tprudent,
in light of the fact that the ace as of now has the duty of planningassembles and
getting incorporate yields with JENKINS_HOME index, so on the offchance that we run
an expand on Jenkins ace, at that point it furthermore needsto manufacture
apparatuses, and workspace for source code, so it puts executionover-burden in the
framework, if the Jenkins ace accidents, it expands thedowntime of your fabricate
and dis charge cycle.
Main benefits of DevOps
+
With a single team composed of cross-functional commentssimply
working in collaboration, DevOps organizations container produceincluding maximum
speed, functionality, including innovation. Where continuespecial benefits:
Continuous software control. Shorter complexity tomanage.
Uses of DevOps tools
+
Gradle. Your DevOps device stack will need a reliable
buildtool. Git. Git is one from the most successful DevOps tools,widely applied
across the specific software industry. Jenkins. Jenkins is thatgo-to DevOps
automation toolfor many software community teams. Bamboo. Docker. Kubernetes. Puppet
Enterpris e. Ansible.
DevOps beginner
+
DevOps is a society which supports collaboration
betweenDevelopment including Operations Team to deploy key to increase faster in
anautomated & repeatable way. In innocent words, DevOps backside is establis hed as
an association of development and IT operations includingexcellent communication and
collaboration.
Roles and responsibilities of the DevOpsengineer
+
DevOps Engineer manages with developers including the ITsystem
to manage the code releases. They are both developers cases becomeinterested in
deployment including practice settings or sysadmins who convert apassion for
scripting and coding more move toward the development front whereall can improve
that planning from test and deployment.
Top DevOps toolsand it’s Whichtools have you worked on
+
Dis cover about the trending Top DevOps Tools including
Git.Well, if you live considering DevOps being a toolwhen, you are wrong! DevOpsdoes
not a toolor software, it’s an appreciation that you can adopt forcontinuous growth.
file and, by practicing it you can simply coordinate this work among your team.
Explain the typical characters involved inDevOps
+
Commitment to the superior level in the organization. Needfor
silver to be delivered across the organization. Version checksoftware. Automated
tools to compliance to process. AutomatedTesting Automated Deployment
Your expectations from a career perspectiveof DevOps
+
To be involved in the end to end delivery method and themost
important phase of helping to change the manner so as to allow thatdevelopment and
operations teams to go together also understand eachother’s point of view.
Configuration management under terms likeinfrastructure
further review some popular tools used
+
In Software Engineering Software Configuration Management is a
unique task about tracking to make the setting configuration during
theinfrastructure with one change. It is done for deploying, configuring
andmaintaining servers.
Approach when each design must toimplement DevOps
+
As the application is generated and deployed, we do need
tocontrolits performance. Monitoring means also really important because it
mightfurther to uncover some defects which might not have been detectedearlier. Q3)
Explain about from Continuous Testing From the above goal of Continuous Integration
which is totake this application excuse to close users are primarily providing
continuousdelivery. This backside is completed out any adequate number about unit
testingand automation testing. Hence, we must validate that this system created
andintegrated with all the developers that work as required. Q) Explain about from
Continuous Delivery. Continuous Delivery means an extension of ConstantIntegration
which primarily serves to make the features which some developerscontinue developing
out on some end users because soon as possible. During this process, it passes
through several stages of QA, Staging etc., and before fordelivery to the PRODUCTION
system.
Tasks also responsibilities of DevOpsengineer
+
In this role, you’ll work collaboratively includingsoftware
engineering to use and operate our systems. Help automate alsostreamline our
procedures and processes. Build also maintain tools fordeployment, monitoring,
including operations. And troubleshoot and resolveproblems in our dev, search and
production environments.
Defined DevOps engineer should know
+
DevOps Engineer goes including developers and that IT staffto
manage this code releases. They live both developers who become involvedthrough
deployment including web services or sysadmins that become a passion forscripting
and coding more move into the development design where only candevelop this planning
from search also deployment.
Any DevOps engineer make
+
A lead DevOps engineer can get between $137,000
including$180,000, according to April 2018 job data of Glassdoor. The common salary
fromany lead DevOps engineer based at the Big Apple is $141,452.
Mean the specific skills required for a DevOpsengineer
+
While tech abilities are a must, strong DevOps engineersfurther
possess this ability to collaborate, multi- task, also always place thatcustomer
first. critical skills that all DevOps engineer requirements forsuccess.
DevOps also why is it important
+
Implementing the new approach would take in many advantageson
an organization. A seamless collection up can be performed in the teams
ofdevelopers, test managers, and operational executives also hence they can workin
collaboration including each other to achieve a greater output on aproject.
Means by DevOps lifecycle
+
DevOps means an agile connection between developmentincluding
operations. It means any process followed by this development becausewell because of
help drivers clean of this starting of this design to productionsupport.
Understanding DevOps means incomplete excuse estimated DevOpslifecycle. Tools for an
efficient DevOps workflow. A daily workflowbased at DevOps thoughts allows team
members to achieve content faster, beflexible just to both experiments also deliver
value, also help each part fromthis organization use a learning mentality.
Can you make DevOps without agile
+
DevOps is one about some key elements to assis t you toachieve
this . Can you do agile software evolution without doing DevOps Butmanaging agile
software development and being agile are a couple reallydifferent things.
Exactly defined is DevOps
+
DevOps is all of bringing commonly the structure alsoprocess of
traditional operations, so being support deployment, including anytools, also
practices of traditional construction methods so as source controlalso versioning.
Q4) Need for Continuous Integration: Improves the quality of software. Reduction in
time taken todelivery Allows dev team to detect and locate problems early Q) Success
factor for the Continuous Integration Maintain Code Repository Automate the build
Perform daily checkin and commits to baseline Test in cloneenvironment Keep the
build fast Make it easy to get the newest deliverables
Can we copy Jenkins job from one server to otherserver
+
Yes, we can do that using one of the following ways We can copy
the Jenkins jobs from one server to other serverby copying the corresponding jobs
folder. We can make a copy of the exis ting jobby making clone of a job directory
with different names Rename the exis ting jobby renaming the directory
We create the backup and copy inJenkins
+
We can copy or backup, we need to backup JENKINS_HOMEdirectory
which contains the details of all the job configurations, builddetails etc. Q)
Difference between “poll scm” and“build periodically” Poll SCM will trigger the
build only if it detects thechange in SCM, whereas Build Periodically will trigger
the build once the giventime period is elapsed.
Difference between docker image and dockercontainer
+
Docker image is a readonly template that contains
theinstructions for a container to start. Docker container is a runnable instanceof
a docker image
Application Containerization
+
It is a process of OS Level virtualization technique used
todeploy the application without launching the entire VM for each applicationwhere
multiple is olated applications or services can access the same Host andrun on the
same OS. Q1) syntax for building docker image docker build –f -timagename:version
Q2) running docker image docker run –dt –restart=always –p : -h -v :
imagename:version Q3) How to log into a container docker exec –it /bin/bash
Configuration Management
+
Configuration Management is the System engineering
process.Configuration Management applied over the life cycle of a system providesvis
ibility and controlof its performance, functional, and physicalattributesrecording
their status and in support of Change Management. Q) Lis t the Software
Configuration ManagementFeatures. Enforcement Cooperating Enablement Version
ControlFriendly Enable Change ControlProcesses Q) Lis t out the 5 Best Software
Configuration ManagementTools. CFEngine Configuration Tool. CHEF Configuration
ToolAnsibleConfiguration ToolPuppet Configuration Tool. SALTSTACK Configuration
Tool.
Puppet be chosen
+
It has good community support Easy to Learn Programming
Language DSL It is opensource
Saltstack
+
SaltStack is based on Python programming & Scripitinglanguage.
Its also a configuration tool.Saltstack works on a non-centralizedmodel or a
master-client setup model. it provides a push and SSH methods tocommunicate with
clients.
Puppet to be chosen
+
There are Some Reason puppet to be chosen. Puppet is opensource
Easy to Learn Programming Language DSL Puppet has goodcommunity support Q1)
Advantages of VCS Multiple people can work on the same project and it helps usto
keep track of the files and documents and their changes. We can merge the changes
from multiple developers to singlestream. Helps us to revert to the earlier version
if the current version is broke. Helps us to maintain multiple version of the
software at thesame location without rewriting. Q2) Advantages of DevOps Below are
the major advantages Technical: Continuous software delivery Less Complexity Faster
Resolution Business: Faster delivery of the features More stable
operatingenvironment Improved communication and collaboration between variousteams
Q3) Use cases where we can use DevOps Explain the legacy / old procedures that are
followed todevelop and deploy software Problems of that approach How can we solve
the above is sues using DevOps. For the 1 st and2 nd points, development of
theapplication, problems in build and deployment, problems in operations, problemsin
debugging and fixing the is sues For 3 rd pointexplain various technologies we can
use to ease the deployments, fordevelopment, explain about taking small features and
development, how it helpsfor testing and is sue fixing. Q4) Major difference between
Agile and DevOps Agile is the set of rules/principles and guidelines abouthow to
develop a software. There are chances that this developed software worksonly on
developer’s environment. But to release that software to publicconsumption and
deploy in production environment, we will use the DevOps toolsand Techniques for the
operation of that software. In a nutshell, Agile is the set of rules for the
developmentof a software, but DevOps focus more on Development as well as Operation
of theDeveloped software in various environments.
Benefits Of Nosql
+
Non-relationals and schema-less data models Low latency andhigh
performance Highly scalable
Adoptions Of Devops In Industry
+
Use of the agile and other development processes andmethods.
Demand for an increased rate of the production releases fromapplication and
business. Wide availability of virtuals and cloud infrastructurefrom both internal
and external providers; Increased usage of the data center,automation and
configuration management tools; Increased focus on the testautomation and continuous
integration methods; Best practices on the critical is sues.
Configuration Management Processes AndTools Important
+
Talk about to multiple software builds, releases, revis
ions,and versions for each other software or testware that is being developed.
Moveon to explain the need for storing and maintaining data, keeping track of
thedevelopment builds and simplified troubleshooting. Don’t forget to mentionthat
key CM tools that can be used to the achieve these objectives. Talk abouthow to
tools like Puppet, Ansible, and Chef help in automating softwaredeployment and
configuration on several servers.
Some Of Most Popular Devops Tools most popular DevOps tools
included`
+
Selenium Puppet Chef Git Jenkins Ansible
Vagrant And Its Uses
+
Vagrant used to virtual box as the hypervis or for
virtualenvironments and in current scenario it is also supporting the KVM.
Kernel-basedVirtual Machine. Vagrant is a toolthat can created and managed
environmentsfor the testing and developing software. Devops Training Free Demo
Devops is Helpful To Developers
+
To fix the bug and implements new features of the quickly.It
provides to the clarity of communications among team members.
Name of The Popular Scripting Language Of the Devops
+
Python
Lis t of The Agile Methodology Of the Devops
+
DevOps is a process Agile is the same as DevOps. Separate group
are framed. Itis problem solving. Developers managing production DevOps is the
development-driven release management
Areas of Devops Are Implemented
+
Production Development Creation of the productions feedback and
its development ITOperations development
Scope For SSH
+
SSH is a Secure Shell which provides users with a
secure,encrypted mechanis m to log into systems and transfer files. To log out the
remote machine and worked on commandline. To secure encrypted of the communications
between two hostsover an insecure network.
Advantages Of Devops With Respect To theTechnical And Business
Perspective
+
Technical benefits Software delivery is continuous. Reduces
Complexity inproblems. Faster approach to resolve problems Manpower is reduced.
Business benefits High rate of delivering its features Stable operating environments
More time gained to Addvalues. Enabling faster feature time to market
Core Operations Of the Devops In TermsOf the Development And
Infrastructure
+
The core operations of DevOps Application development Code
developing Code coverage Unit testing Packaging Deployment With infrastructure
Provis ioning Configuration Orchestration Deployment
Anti-patterns Of Devops
+
A pattern is common usage usually followed. If a pattern
ofthecommonly adopted by others does not work for your organization and youcontinue
to blindly follow it, you are essentially adopting an anti-pattern.There are myths
about DevOps. Some of them include DevOps is a process Agile equalsDevOps We need a
separate DevOps group Devops will solve all ourproblems DevOps means Developers
Managing Production DevOps is Development-driven release management DevOps is not
development driven. DevOps is not IT Operations driven. We can’t do DevOps– We’re
Unique We can’t do DevOps – We’re got the wrongpeople
Most Important Thing Devops Helps UsAchieve
+
The most important thing that the DevOps helps us achieve is to
get the changes into production as quickly as possible while that minimizingris ks
in software quality assurance and compliance. This is the primaryobjective of
DevOps. For example clear communication and better workingrelationships between
teams i.e. both of the Ops team and Dev team collaboratetogether to deliver good
quality software which in turn leads to higher customersatis faction.
Make a Sure New Service is Ready For TheProducts Launched
+
Backup System Recovery plans Load Balancing Monitoring
Centralizedlogging
All These Tools Work for Together
+
Given below is a generic logical of the flow whereeverything
gets are automated for seamless delivery. However, its flow may varyfrom
organization to the organization as per the requirement. Developers develop the code
and this source code is managedby Version ControlSystem of the tools like Git etc.
Developers send to this code of the Git repository and anychanges made in the code
is committed to this Repository. Jenkins pulls this code from the repository using
the Gitplugin and build it using tools like Ant or Maven. Configuration managements
tools like puppet deploys &provis ions testing environment and then Jenkins releases
this code on the testto environment on which testing is done using tools like
selenium. Once the code are tested, Jenkins send it for the deploymenton production
to the server (even production server are provis ioned &maintained by tools like
puppet). After deployment Its continuously monitored by tools likeNagios. Docker
containers provides testing environment to the testthe build features.
Top Devops Tools
+
The most popular DevOps tools are mentioned below GitVersion
ControlSystem tool Jenkins Continuous Integration toolSelenium ContinuousTesting
tool Puppet, Chef, Ansible are Configuration Management andDeployment tools Nagios
Continuous Monitoring tool Docker Containerization tool
Devops Different From the Agile / Sdlc
+
Agile are the set of the values and principles about how
toproduce i.e. develop software. Example if you have some ideas and you want to the
turnthose ideas into the working software, you can use the Agile values
areprinciples as a way to do that. But, that software might only be working on
developer’s laptop or in a test environment. Youwant a way to quickly, easily and
repeatably move that software into theproduction infrastructure, in a safe and
simple way. To do that you needs areDevOps tools and techniques. You can summarize
by saying Agile of the softwaredevelopment methodology focuses on the development
for software but DevOps onthe other hand is responsible for the development as well
as deployment of thesoftware to the safest and most reliable way to the possible.
Here’s ablog that will give you more information of the evolutions of the DevOps.
Uses of Version control
+
Revert files back to a previous state. Revert to the
entireproject back to a previous state. Compare changes over time. See who last
modified the something that might to be causinga problem. Who introduced an is sue
and when.
Meant by Continuous Integration
+
It is a development practice that requires are developers
tointegrate code into the shared repository several times a day.
A PTR in DNS
+
Pointer (PTR) record to used for the revers DNS (Domain
NameSystem) lookup.
Testing is necessary to insure a new service is ready for
production
+
Continuous testing
Continuous Testing
+
It is the process of executing on tests as part of thesoftware
delivery pipelines to obtain can immediate for feedback is the businessof the ris ks
associated with in the latest build.
Automation Testing
+
Automation testing or Test Automation is a process of
theautomating that manual process to test the application/system under test.
Key elements of continuoustesting
+
Ris k assessments, policy analysis ,
requirementstraceabilities, advanced analysis , test optimis ation, and
servicevirtualis ations
Testing types supported bySelenium
+
Regression testing and functional testing Also Read>> Top
Selenium Interview Questions &Answers
Describe two-factor authentication
+
Two-factors authentication are the security process in whichthe
user to provides two means of the identification from separate categories
ofcredentials.
Q0) What is git add
+
adds the file changes to the staging area
Git checkout
+
Switch branch or restore working files
Git branch
+
Creates a branch
Git merge
+
Joins two or more branches together
Git rebase
+
Process of moving or combining a sequence of commits to anew
base commit
Git revert
+
To revert a commit that has already been publis hed and
madepublic
Git clone
+
Ans: clones the git repository and creates a working copy inthe
local machine
Difference between the Annie Playbookbook and the characters
+
Roles The characters are a restructured entity of a play.
Playsare on playbooks. A set of functions to accomplis h the specific role.
Mapsbetween hosts and roles. Example: Common, Winners. Example:
site.yml,fooservers.yml, webservers.yml.
See all the ansible_ variables lis t
+
By naturally collecting “facts” about themachines, these facts
can be accessed in Playbooks and in templates. To see alis t of all the facts about
a computer, you can run a “setup” blockas an ad hoc activity: Ansible -m system
hostname It will print a dictionary of all the facts available forthat particular
host.
Doctor
+
Docax is a container technology that connects yourapplication
and all its functions into the form of containers to ensure that youare running
uninterrupted in any situation of your use.
Tagore film
+
Tucker is the source of the dagger container. Or in otherwords,
dagger pictures are used to create containers.
Tooger container
+
Dogger Container is a phenomenon of the film.
Do we consider Dev Devils as a smart way
+
Of course, we !! The only difference between dynamicalgorithms
and DevObs is that the dynamic process is implemented for thedevelopment section and
activates both DevOps development andfunctionality.
Benefits of using Git
+
Data personality and copy Get high only one. A directory
directory in the repository High dis kusage and network performance Joint friendship
Git can use any kind of projects.
Kernel
+
A kernel, the software that can easily change the
hardwareinterfaces of your computer.
Difference between grep -i and grep-v
+
I accept this value L) ls | grep -i docker Dockerfile
docker.tar.gz ls | grep -v docker Desktop Dockerfile Documents Downloads You can not
find anything with name docker.tar.gz Q20) You can define a specific location for
thefile This feature is generally used to give the server areplacement location. Let
me tell you on the computer below and I want to create1GB swap space, dd if = / dev
/ zero = = / swapfile1 bs = 1G count =1
Concept of sudo in Linux
+
Pseudo is an application for Unix-and Linux-based systemsthat
provide the ability to allow specific users to use specific system commandsin the
system’s root level.
Jenkins pipe
+
Jenkins pipeline (or simply “tube”) is anadditional package
that supports and activates continuous delivery tube inJenkins.
Stop and restart the toxin container
+
Stop container: stop container container ID Reboot the Tucker
Container now: Docer Re-containerID
Sites are running by Tagore
+
Docax is running on Linux and Cloud platforms only: Ubuntu
12.04 LTS + Fedora 20+ RHEL 6.5+ CentOS 6+ Gentoo ArchLinux openSUSE 12.3+ CRUX 3.0+
Cloud: Amazon EC2 Google Compute Engine Microsoft Asur Rackspace Since support is
not supported, do not work on Windows orMac for token production, yes, even on
windows you can use it for testingpurposes
Tools used for taxi networking
+
We usually use karfs and taxi bear to do taxinetworking.
Tucker write
+
You would like to have a number of taxiers containers, andat
that time you need to create a file that creates a docer and type the commandto make
a taxi-up. It runs all containers mentioned in the docer composefile.
Scrum
+
Using scrime based on your complex software and
productdevelopment task as small particles, it uses reboots and additional
procedures.Each replay is two weeks. Scrum has three characters: product owner,
scrummaster and team
Are DevOps implemented
+
Product development Creating product feedback and its
development IT ActivitiesDevelopment.
Do you want to lis t the active modes ofDevOps
+
DevOps is a process Like the active DevOps. A separate group is
configured. This will solve theproblem. Manufacturers manufacturing production
DevOps is a development-driven output management
Do you lis t the main difference between active andDevOffice
+
Agile: There is something about dynamic software
developmentDevops: DevOps is about software deployment and management. DevOps does
not replace the active or lean. By removingwaste, by removing gloves and improving
regulations, it allows the production ofrapid and continuous products.
For the popular scripting language of DevOps
+
Python
Vegand and its Uses
+
Virtual virtual box has been used as a hyperversion forvirtual
environments and in the current scenario it supports KVM. Kernel-basedvirtual
machine Vegant is a toolfor creating and managing the environmentfor making software
and experiments. Tutorials Tutorial Free Demo
Main difference between Linux and Unixoperating systems
+
Unix: It belongs to the multitasking, multiuser operating
systemfamily. These are often used on web servers and workstations. It was
originally derived from AT & T Unix, which wasstarted by the Bell Labs Research
Center in the 1970s by Ken Thompson, Dennis Ritchie, and many others. Operating
systems are both open source, but the comparis onis relatively similar to Unix
Linux. Linux: Linux may be familiar to each programming language. Thesepersonal
computers are used. The Unix operating system is based on the kernel.
We ensure prepare a new service forthe products launched
+
Backup system Recovery plans Load balance TrackingCentralized
record
Benefit of NoSQL
+
Independent and schema-less data model Low latency and
highperformance Very scalable Q) What is the adoption of Devokos in theprofession 1.
Use of active and other developmental processes andmethods. An increased ratio of
production output is required from useand business. Virtual and Cloud Infrastructure
Transfers from Internal andOutdoor Providers; Increased use of data center,
automation and configurationmanagement tools; Focusing on testing automation and
serial coordinationsystems; Best Practices in Important Problems
Benefits of NoSQL database onRDBMS
+
Benefits: ETL is very low Support for structured text is
provided Changes in periodsare handled Key Objectives Function. The ability to
measure horizontally Many data structures areprovided. Vendors may be selected. Q0)
The first 10 capabilities of a person in the positionof DevOp should be. The best in
system adminis tration Virtualizationexperience Good technical skills Great script
Good development skills Chef in the automation toolexperience Peoplemanagement
Customer service Real-time cloud movements Who’s worried aboutwho
PTR in DNS
+
The PNS (PTR) regis tration is used to turn the search
DNS(Domain Name System).
Know about DevOps
+
Your answer should be simple and straightforward. Start
byexplaining the growing importance of DevOps in information technology.Considering
that the efforts of the developments and activities to acceleratethe delivery of
software products should be integrated, the minimum failurerate. DevOps is a
value-practical procedure in which the design and performanceengineers are able to
capture the product level or service life cycle across thedesign, from design and to
the design level
Dev’s so important in the past fewyears
+
Before dis cussing the growing reputation of DevOps, dis
cussthe current industry scenario. The big players like Netflix and Facebook
beginwith some examples of how this business can help to develop and use
unwantedapplications. Facebook’s continuous use and coding license models, and howto
measure it, while using Facebook to ensure the quality of the experience.Hundreds of
lines are implemented without affecting ranking, stability andsecurity. Dipops
Training Course Your next application must be Netflix. This streaming
andon-the-video video company follows similar procedures with complete
automatedprocesses and systems. Specify user base of these two companies: Facebook
has 2billion users, Netflix provides online content for more than 100 million
usersworldwide. Reduced lead time between the best examples of bugs, bugfixes,
runtime and continuous supplies and the overall reduction of humancosts.
Some of the most popular DevOpstools
+
The most popular DevOps tools include: Selenium Puppet Chef Git
information Jenkins Ansible Tucker Tipps Online Training
Version Control, and why should VCSuse
+
Define the controlbar and talk about any changes to one ormore
files and store them in a centralized repository. VCS Tools remembersprevious
versions and helps to: Make sure you do not go through changes over time. Turn on
specific files or specific projects to the olderversion. Explore the problems or
errors of a particular change. Using VCS, developers provide flexibility to
worksimultaneously on a particular file, and all changes are logicallyconnected.
Is There a Difference Between Active and DevOpsIfyes, please
explain
+
As a DevOps Engineer, interview questions like this are
verymuch expected. Start by explaining the clear overlap between DevOps and
Agile.Although the function of DevOps is always synonymous with dynamic
algorithms,there is a clear difference between the two. Agile theories are related
to thesoft product or development of the software. On the other hand, DevOps is
handled with development, ensuring quick turnaround times, minimal errors
andreliability by installing the software continuously.
Structural management processes and toolsimportant
+
Talk about many software developments, releases, edits
andversions for each software or testware. Describe the need for data storage
andmaintenance, development of developments and tracking errors easily. Do notforget
to mention key CM tools that can be used to achieve these goals. Talkabout how the
tools, such as buffet, aseat, and chef are useful in automatingsoftware deployment
and configuration on multiple servers.
Chef used as a CM tool
+
Chef is considered one of the preferred professional CMTools.
Facebook has changed its infrastructure and the Shef platform keeps trackof IT, for
example. Explain how the chef helps to avoid delays by automatingprocesses. The
scripts are written in ruby. It can be integrated intocloud-based platforms and
configures new settings. It provides many librariesfor infrastructure development,
which will then be installed in a software.Thanks to its centralized management
system, a chef server is sufficient to usevarious policies as the center of
ordering.
Explain the concept of“Infrastructure Index” (IAC)
+
This is a good idea to talk about IAC as a concept,sometimes
referred to as a programming program, where the infrastructure is similar to any
other code. The traditional approach to managing infrastructureis take a back seat
and handle manual structures, unusual toolsand custom scripts Q0) Lis t the
essential DevOps tools. Git information Jenkins Selenium Puppet Chef Ansible Nagios
LaborerMonit El-Elis torsch, Lestastash, Gibbon Collectd / Collect Git Information
(Gitwidia)
Main characters of DevOps engineersbased on growth and
infrastructure
+
DevOps Engineer’s major work roles ApplicationDevelopment
Developing code Code coverage Unit testing Packaging Preparing with infrastructure
Continuous integrationContinuous test Continuous sorting Provis ioning Configuration
OrchestrationDeployment
Advantages of DevOps regarding technicaland business
perspective
+
Technical Advantages: Software delivery continues. Problems
reduce austerity. Fast approach to solving problems Humans are falling. Business
Benefits: The higher the rate for its features Fixed operatingsystems It took too
long to add values. Run fast time for themarket Learn more about DevOps benefits
from this informationblog.
Purpose for SSH
+
SSH is a secure shell that allows users to login to asecure,
encrypted mechanis m into computers and transmitting files. Exit the remote machine
and work on the command line. Protect encrypted communications between the two hosts
on anunsafe network.
Part of DevOps is implemented
+
Product development Creating product feedback and its
development IT ActivitiesDevelopment Q5) Lis t the DevOps’s active algorithm. DevOps
is a process Like the active DevOps. A separate group is configured. This will solve
theproblem. Manufacturers manufacturing production DevOps is a development-driven
output management Q) Lis t the main difference between active anddevOps. Agile:
There is something about dynamic software developmentDevops: DevOps is about
software deployment and management. DevOps does not replace the active or lean. By
removingwaste, by removing gloves and improving regulations, it allows the
production ofrapid and continuous products. Q) For the popular scripting language of
DevOps. Python
DevOps help developers
+
Correct the error and activate new features quickly. It
provides clarity of clarity between the members of thegroup.
Speed and its benefits
+
Virtual virtual box has been used as a hyperversion forvirtual
environments and in the current scenario it supports KVM. Kernel-basedvirtual
machine Vegant is a toolfor creating and managing the environmentfor making software
and experiments.
Use of Anuj
+
It is mainly used for information technology infrastructureto
manage or use applications for remote applications. We want to sort an app onthe
nodes of 100 by executing one command, then the animation is actually in thepicture,
but you need to know or run some knowledge on the animatedscript.
Infrastructure as Code
+
Answer: Where the Configuration of any servers or toolchainor
application stack required for an organization can be made into moredescriptive
level of code and that can be used for provis ioning andmanage infrastructure
elements like Virtual Machine, Software, NetworkElements, but it differs from
scripts using any language, where theyare series of static steps coded, where
Version controlcan be used inorder to track environment changes.Example Tools are
Ansible,Terraform.
Areas the Version controlcan introduce toget efficient DevOps
practice
+
Answer: Obviously the main area of Version Controlis Sourcecode
management, Where every developer code should be pushed to the commonrepository for
maintaining build and release in CI/CD pipelines.Another area canbe Version
controlFor Adminis trators when they use Infrastructure as A Code(IAC) tools and
practices for maintaining The Environment configuration.AnotherArea of Version
Controlsystem Can be Artifactory Management Using Repositorieslike Nexus &
DockerHub.
Opensource tools boost DevOps
+
Answer: Opensource tools predominantly used by anyorganization
adapting (or) adopted DevOps pipelines because devops camewith the focus of
automation in various aspects of organization build andrelease and change management
and also infrastructure managementareas.
Difference between Ansible and chef(or)puppet
+
Answer: Ansible is Agentless configuration management
tool,where puppet or chef needs agent needs to be run on the agent node and chef
orpuppet is based on pull model, where your cookbook or manifest for chef andpuppet
respectively from the master will be pulled by the agent and ansible usesssh to
communicate and it gives data-driven instructions to the nodes need to bemanaged ,
more like RPC execution, ansible uses YAML scripting, whereas puppet(or) chef is
built by ruby uses their own DSL .
Folder structure of roles in ansible
+
Answer: roles common tasks handlers files templates
varsdefaults meta webservers tasks defaultsmeta/
Jinja2 templating in Ansible playbooks and theiruse
+
Answer: Jinja2 templating is the Python standard fortemplating
, think of it like a sed editor for Ansible , where it can be used is when there is
a need for dynamic alteration of any config file to anyapplication like consider
mapping a MySQL application to the IP address of themachine, where it is running, it
cannot be static , it needs altering itdynamically at runtime .
Need for organizing playbooks as the role,is it necessary
+
Answer: Organizing playbooks as roles , gives morereadability
and reusability to any plays , while consider a task where MySQLinstallation should
be done after the removal of Oracle DB , and anotherrequirement is needed to install
MySQL after java installation, in both cases weneed to install MySQL , but without
roles need to write playbooks separately forboth use cases , but using roles once
the MySQL installation role is created canbe utilis ed any number of times by
invoking using logic in site.yaml.
Main dis advantage of Docker containers
+
Answer: As the lifetime of any containers is while runningafter
a container is destroyed you cannot retrieve any data inside a container,the data
inside a container is lost forever, but persis tent storage for datainside
containers can be done using volumes mount to an external source likehost machine
and any NFS drivers.
Docker engine and docker compose
+
Answer: Docker engine contacts the docker daemon inside
themachine and creates the runtime environment and process for any container,docker
composes links several containers to form as a stack used in creatingapplication
stacks like a LAMP, WAMP,XAMP.
Different modes does a container can berun
+
Answer: Docker container can be run in two modes Attached:Where
it will be run in the foreground of the system you are running, provides aterminal
inside to container when -t option is used with it, where every logwill be
redirected to stdout screen. Detached: This mode is usually run inproduction, where
the container is detached as a background process and everyoutput inside the
container will be redirected log files
inside/var/lib/docker/logs//and which can be viewed
by docker logs command.
Output of docker inspect command willbe
+
Answer: Docker inspects willgive output in JSON
format, contains details like the IP address of thecontainer inside the docker
virtual bridge and volume mount information andevery other information related
to host (or) container specific like theunderlying file driver used, log driver
used. docker inspect [OPTIONS] NAME|ID[NAME|ID…] Options
Command can be used to check the resourceutilization by docker
containers
+
Answer: Docker stats command can be used to check theresource
utilization of any docker container, it gives the output analogous toTop command in
Linux, it forms the base for container resource monitoring toolslike advis or, which
gets output from docker stats command. docker stats[OPTIONS] [CONTAINER…] Options
Major difference between Continuosdeployment and continuos
delivery
+
Answer: Where continuos deployment is fully automated
anddeploying to production needs no manual intervention in continuos
deployment,whereas in continuos delivery the deployment to production has some
manual intervention for change management in Organizationfor better management, and
it needs to approved by manager or higher authoritiesto be deployed in production.
According to your application ris k factor fororganization, the continuos deployment
(or) delivery approach will be chosen.
Execute some task (or) play on localhost onlywhile executing
playbooks on different hosts on an ansible
+
Answer: In ansible, there is a module called delegate_to,
inthis module section provide the particular host (or) hosts where your tasks
(or)task need to be run. tasks:
Q=status:new’headers='{“Content-type”:”application/json”}’method=GET
return_content=yes regis ter: output delegate_to: 127.0.0.1
Difference between set_fact and vars inansible
+
Answer: Where a set_fact sets the value for a factor at onetime
and remains static, even though the value is Quite dynamic and vars keep on changing
as per the valuekeeps on changing for the variable. tasks: – set_fact:
fact_time:“Fact: {{lookup(‘pipe’, ‘date\”+%H:%M:%S\”‘)}}” – debug: var=fact_time
–command: sleep 2 – debug: var=fact_time tasks: – name: lookups invariables vs.
lookups in facts hosts: localhost vars: var_time: “Var:{{lookup(‘pipe’,
‘date\”+%H:%M:%S\”‘)}}” Even though the lookup for date hasbeen used in both the
cases , where in the vars is used it alters based on thetime to time every time
executed within the playbook lifetime. But Fact alwaysremains same once lookup is
done
Lookup in ansible and what are lookupplugins supported by
ansible
+
Answer: Lookup plugins allow access of data in Ansible
fromoutside sources. These plugins are evaluated on the Ansible controlmachine,
andcan include reading the filesystem but also contacting external datastores
andservices. Format is {lookup{‘ ’,’’}}Some of
the lookup plugins supported by ansible are File pipe redis jinjatemplates
etcd kv store …
Delete the docker images stored on yourlocal machine and do it
for all the images at once
+
Answer: The command docker rmi canbe used to delete
the docker image from local machine , whereas some images mayneed to be forced
because the image may be used by some other container (or)another image , to
delete images you can use the combination of commands bydocker rmi $(docker
images - Q) , where docker images will give the docker image names ,to get only
the ID of docker images only , we are using - Q switch with docker images
command.
Folders in the Jenkins installation andtheir uses
+
Answer: JENKINS_HOME – which will be/$JENKINS_USER/.jenkins it
is the root folder of any Jenkins installation and itcontains subfolders each for
different purposes. jobs/ – Folder containsall the information about all the jobs
configured in the Jenkins instance.Inside jobs/, you will have the folder created
for each job and inside thosefolders, you will have build folders according to each
build numbers each buildwill have its log files, which we see in Jenkins web
console. Plugins/ –where all your plugins will be lis ted. Workspace/ – this will be
present to hold all theworkspace files like your source code pulled from SCM.
Ways to configure Jenkins system
+
Answer: Jenkins can be configured in two ways Web: Wherethere
is an option called configure system , in there section you can make
allconfiguration changes . Manual on filesystem: Where every change can also bedone
directly on the Jenkins config.xml file under the Jenkins installationdirectory ,
after you make changes on the filesystem, you need to restart yourJenkins, either
can do it directly from terminal (or) you can use Reloadconfiguration from dis k
under manage Jenkins menu or you can hit /restartendpoint directly.
Role Of HTTP REST API in DevOps
+
Answer: As Devops is purely focuses on Automating
yourinfrastructure and provides changes over the pipeline for different stages
likean each CI/CD pipeline will have stages like
build,test,sanitytest,UAT,Deployment to Prod environment as with each stage there
are differenttools is used and different technology stack is presented and there
needs to bea way to integrate with different toolfor completing a series toolchain,
therecomes a need for HTTP API , where every toolcommunicates with different
toolsusing API , and even user can also use SDK to interact with different tools
likeBOTO for Python to contact AWS API’s for automation based on events ,nowadays
its not batch processing anymore , it is mostly event drivenpipelines
Microservices, and how they power efficientDevOps practices
+
Answer: Where In traditional architecture , everyapplication is
monolith application means that anything is developed by a groupof developers ,
where it has been deployed as a single application in multiplemachines and exposed
to outer world using loadbalancers , where themicroservices means breaking down your
application into small pieces , whereeach piece serves the different functionality
needed to complete a singletransaction and by breaking down , developers can also be
formed to groups andeach piece of application may follow different guidelines for
efficientdevelopment phase , because of agile development should be phased up a bit
andevery service uses REST API (or) Message Queues to communicate between other
service. So build andrelease of a non-robust version may not affect whole
architecture , instead somefunctionality is lost , that provides the assurance for
efficient and fasterCI/CD pipelines and DevOps Practices
Ways that a pipeline can be created inJenkins
+
Answer: There are two ways of the pipeline can be created
inJenkins Scripted Pipelines: More like a programming approach Declarativepipelines:
DSL approach specifically for creating Jenkins pipelines. Thepipeline should be
created in Jenkins file and the location can either be in SCMor local system.
Declarative and Scripted Pipelines are constructedfundamentally differently.
Declarative Pipeline is a more recent feature ofJenkins Pipeline which: Provides
richer syntactical features over ScriptedPipeline syntax, and is designed to make
writing and reading Pipeline codeeasier.
Labels in Jenkins & where it canbe utilis ed
+
Answer: As with CI/CD solution needs to be centralized ,where
every application in the organization can be built by a single CI/CDserver , so in
organization there may be different kinds of application likejava , c#,.NET and etc
, as with microservices approach your programming stackis loosely coupled for the
project , so you can have Labels in each node and select the optionOnly built jobs
while label matching this node , so when a build is scheduledwith the label of the
node present in it , it waits for next executor in thatnode to be available ,
eventhough there are other executors in nodes.
Use of Blueocean in Jenkins
+
Answer: Blue Ocean rethinks the user experience of
Jenkins.Designed from the ground up for Jenkins Pipeline, but still compatible
withfreestyle jobs, Blue Ocean reduces clutter and increases clarity for everymember
of the team. It provides sophis ticated UI to identify each stage of thepipeline and
better pinpointing for is sues and very rich Pipeline editor forbeginners.
Callback plugins in ansible, give someexamples of some
callback plugins
+
Answer: Callback plugins enable adding new behaviors toAnsible
when responding to events. By default, callback plugins controlmost ofthe output you
see when running the command line programs, but can also be usedto add additional
output, integrate with other tools and marshall the events toa storage backend. So
whenever an play is executed and after it produces someevents , that events are
printed onto Stdout screen ,so callback plugin can beput into any storage backend
for log processing. Example callback plugins areansible-logstash, where every
playbook execution is fetched by logstash in theJSON format and can be integrated
any other backend source likeelasticsearch.
Scripting languages can be used inDevOps
+
Answer: As with scripting languages , the basic shellscripting
is used for build steps in Jenkins pipelines and python scripts can beused with any
other tools like Ansible , terraform as a wrapper script for someother complex decis
ion solving tasks in any automation as python is moresuperior in complex logic
derivation than shell scripts and ruby scripts canalso be used as build steps in
Jenkins.
Continuos Monitoring and why monitoring is verycritical in
DevOps
+
Answer: Devops brings out every organization capablity ofbuild
and release cycle to be much shorter with concept of CI/CD , where everychange is
reflected into production environments fastly , so it needs to betightly monitored
to get customer feedbacks. So the concept of continuosmonitoring has been used to
evaluate each application performance in real time(atleast Near Real Time) , where
each application is developed with applicationperformance monitor agents compatible
and the granular level of metrics aretaken out like JVM stats and even fuctional wis
e metrics inside the applicationcan also be poured out in real time to Agents ,
which in turn gives to anybackend storage and that can be used by monitoring teams
in dashboards andalerts to get continuosly monitor the application
Give some examples of continuos monitoringtools
+
Answer: Where many continuos monitoring tools are availablein
the market, where used for a different kind of application and deploymentmodel
Docker containers can be monitored by cadvis or agent , which can be usedby
Elasticsearch to store metrics (or) you can use TICK stack
(Telegraf,influxdb,Chronograf,Kapacitor) for every systems monitoring in NRT(Near
RealTime) and You can use Logstash (or) Beats to collect Logs from system , which
inturn can use Elasticsearch as Storage Backend can use Kibana (or) Grafana asvis
ualizer. The system monitoring can be done by Nagios and Icinga.
Ways to create Custom Dockerimages
+
Answer: Docker images can be created by two ways
broadlyDockerfile: Most used method , where base image can be specified and the
filescan be copied into the image and installation and configuration can be
doneusing declarative file which can be given to Docker build command to produce
newdocker image. Docker commit: Where the Docker image is pinned up as aDocker
container and every command execute inside a container forms a Read-onlylayer and
after every changes is Done can use docker commit to save as a image,
although this method is notsuitable for CI/CD pipelines , as it re Quires manual
intervention.
Give some important directives in Dockerfile and anexample
Dockerfile
+
Answer: FROM – Gives the base image to use. RUN– this directive
used to run a command directly into any image. CMD- Torun the command, but the
format of command specification is more arguments basedthan a single command like
RUN. ADD (or) COPY – To copy files from yourlocal machine to Docker images you
create. ENTRYPOINT- Entrypoint command keepsthe command without execution, so when
the container is spawned from an image,the command in entry point runs first.
Example Dockerfile FROM python:2 MAINTAINER janakiraman RUN mkdir /code ADD test.py
/code ENTRYPOINT[“python”,”/code/test.py”] Q2. Give some important Jenkins Plugins
Answer: SSH slaves plugin
Use of vaults in ansible
+
Answer: Vault files are encrypted files, which contains
anyvariables used by ansible playbooks, where the vault encrypted files can
bedecrypted only by the vault-password, so while running a playbook, if any
vaultfile is used for a variable inside playbooks, so need to used–-ask-vault-pass
command argument while running playbook.
Docker make deployments easy
+
Answer: Docker is a containerization technology, which is
aadvanced technology over virtualization, where in virtualization, an
applicationneeds to be installed in machine , then the OS should be spin up and
spinning upVirtual machine takes lot time , and it divides space from Physical
hardware andhypervis or layer wastes vast amount of space for running virtual
machines andafter it is provis ioned, Every application needs to be installed
andinstallation re Quires all dependencies and sometimes dependencies may mis sout
even if you double check and migration from machine to machine ofapplications is
painful , but docker shares underlying OS resources , wheredocker engine is
lightweight and every application can be packaged withdependency once tested works
everywhere same, migration of application orspinning up of new application made easy
because just needs to install onlydocker in another machine and docker image pull
and run does all the magic ofspinning up in seconds.
.NET applications can be built usingJenkins
+
Answer: .NET applications needs Windows nodes to built ,where
Jenkins can use Jenkins windows slave plugin can be used to connectwindows node as a
Jenkins slave , where it uses DCOM connector for Jenkinsmaster to slave connection
(or) you can use Jenkins JNLP connector and the Buildtools and SCM tools used for
the pipeline of .NET application needs to beinstalled in the Windows slave and
MSBuild build toolcan be used to build .NETapplication and can be Deployed into
Windows host by using Powershell wrapperinside Ansible playbooks.
Make a High available Jenkins master-mastersolution without
using any Jenkins plugin
+
Answer: Where Jenkins stores all the build information inthe
JENKINS_HOME directory , which can be mapped to any NFS (or) SAN storagedrivers ,
common file systems and when the node is down , can implement amonitoring solution
using Nagios to check alive , if down can trigger an ansibleplaybook (or) python
script to create a new Jenkins master in different node andreload at runtime, if
there is already a passive Jenkins master in anotherinstance kept silent with same
JENKINS_HOME Network file store.
Give the structure of Jenkins file
+
Answer: Jenkins filed starts with Pipeline directive ,inside
the pipeline directive will be agent directive , which specifies wherethe build
should be run and next directive would be stages , which containsseveral lis t of
stage directives and each stage directive contains differentsteps . There are
several optional directives like options , which providescustom plugins used by the
projects (or) any other triggering mechanis ms usedand environment directive to
provide all env variables Sample Jenkins filepipeline{ agent any stages {
stage(‘Dockerbuild’) { steps { sh“sudo docker build. -t pyapp:v1” } } } }
Uses of integrating cloud withDevOps
+
Answer: The centralized nature of cloud computing
providesDevOps automation with a standard and centralized platform for
testing,deployment, and production.Most cloud providers gives Even DevOps
technologieslike CI tools and deployment tools as a service like codebuild,
codepipeline,codedeploy in AWS makes easy and even faster rate of DevOps pratice.
Orchestration of containers and what are thedifferent tools
used for orchestration
+
Answer: When deploying into production, you cannot use asingle
machine for production as it is not robust for any deployment , so whenan
application is containerized, the stack of applications maybe run at singledocker
host in development environment to check application functionality, whilewhen we
arrive into production servers, that it is not the case, where youshould deploy your
applications into multiple nodes and stack should beconnected between nodes , so to
ensure network connectivity between differentcontainers , you need to have shell
scripts (or) ansible playbooks betweendifferent nodes ,and another dis advantage is
using this tools , you cannot runan efficient stack, where an application is taking
up more resources in one node, but another sits idle most time , so deployment
strategy also needs to beplanned out according to resources and load-balancing of
this applications alsobe configured, so to clear out all this obstacles , there came
a concept calledorchestration , where your docker containers is orchestrated between
differentnodes in the cluster based on resources available according to
schedulingstrategy and everything should be given as DSL specific files not like
scripts.There are Different Orchestration tools available in market which
areKubernetes,Swarm,Apache Mesos.
Ansible tower
+
Answer: Ansible is developed by Redhat , which provides
ITautomation and configuration management purposes. Ansible Tower is the
extendedmanagement layer created to manage playbooks organization using roles
andexecution and can even chain different number of playbooks to form
workflows.Ansible tower dashboard provides NOC-style UI to look into the status of
allansible playbooks and hosts status.
Programming language applications that canbe built by Jenkins
+
Answer: Jenkins is a CI/CD toolnot depends on anyProgramming
language for building application, if there is a build toolto builtany language,
that’s enough to build, even though plugin for build toolnot available, can use any
scripting to replace your build stage like Shell,Powershell, Python scripts to make
build of any language application.
Every toolin DevOps is mostly has some DSL(Domain Specific
Language)
+
Answer: DevOps is culture developed to address the needs
ofagile methodology , where the developement rate is faster ,so deployment
shouldmatch its speed and that needs operations team to co-ordinate and work with
devteam , where everything can automated using script-based , but it feels morelike
operations team than , it gives messy organization of any pipelines , morethe use
cases , more the scripts needs to be written , so there are several usecases, which
will be ade Quate to cover the needs of agile are taken and tools arecreated
according to that and customiztion can happen over the toolusing DSL toautomate the
DevOps practice and Infra management.
Clouds can be integrated with Jenkins anduse cases
+
Answer: Jenkins can be integrated with different cloudproviders
for different use cases like dynamic Jenkins slaves, Deploy to cloudenvironments.
Some of the clouds can be integrated areAWS
Docker volumes and what type of volume shouldbe used to
achieve persis tent storage
+
Answer: Docker volumes are the filesystem mount pointscreated
by user for a container or a volume can be used by many containers , andthere are
different types of volume mount available empty dir, Post mount, AWSbacked lbs
volume, Azure volume, Google Cloud (or) even NFS, CIFS filesystems,so a volume
should be mounted to any of the external drive to achieve persis tentstorage ,
because a lifetime of files inside container , is till the containeris present and
if container is deleted, the data would be lost.
Artifacts repository can be integratedwith Jenkins
+
Answer: Any kind of Artifacts repository can be integratedwith
Jenkins, using either shell commands (or) dedicated plugins, some of themare Nexus,
Jfrog.
Some of the testing tools that can beintegrated with jenkins
and mention their plugins
+
Answer: Sonar plugin – can be used to integratetesting of Code
Quality in your source code. Performance plugin – this can be used to integrate
JMeter performance testing. Junit – to publis hunit test reports. Selenium plugin –
can be used to integrate withselenium for automation testing.
Build triggers available inJenkins
+
Answer: Builds can be run manually (or) either canautomatically
triggered by different sources like Webhooks– The webhooksare API calls from SCM ,
whenever a code is committed into repository (or) canbe done for specific events
into specific branches. Gerrit code reviewtrigger– Gerrit is an opensource code
review tool, whenever a code changeis approved after review build can be triggered.
Trigger Build Remotely –You can have remote scripts in any machine (or) even AWS
lambda functions (or)make a post re Quest to trigger builds in Jenkins. Schedule
Jobs- Jobs canalso schedule like Cron jobs. Poll SCM for changes – Where your
Jenkinslooks for any changes in SCM for given interval, if there is a change, the
buildcan be triggered. Upstream and Downstream Jobs– Where a build can betriggered
by another job that is executed previously.
Version controlDocker images
+
Answer: Docker images can be version controlled using Tags
,where you can assign tag to any image using docker tag command. And if
you are pushing any docker hub regis try without tagging thedefault tag would be
assigned which is latest , even if a image with the latestis present , it
demotes that image without tag and reassign that to the latestpush image.
Use of Timestamper plugin inJenkins
+
Answer: It adds Timestamp to every line to the consoleoutput of
the build.
You not execute a build on master
+
Answer: You can run a build on master in Jenkins , but it is
not advis able , because the master already has the responsibility of
schedulingbuilds and getting build outputs into JENKINS_HOME directory ,so if we run
abuild on Jenkins master , then it additionally needs to build tools, andworkspace
for source code , so it puts performance overload in the system , ifthe Jenkins
master crashes , it increases the downtime of your build and releasecycle.
Devops
+
Answer: DevOps is the market trend now, follows asystematic
approach for getting the application live to market. DevOps is allabout tools helps
in building the development platform as well asproduction platform. Product
companies are now looking at a Code as a serviceconcept in the development skill is
used to create a productionarchitecture with atmost no downtime.
You think a Version controlsystem is necessaryfor DevOps team
+
Answer: Application is all about code, if the UI is notbehaving
as expected, there could be a bug in the code. Inorder to track thecode updates,
versioning is a must. By any chance if bug breaks the application, we should beable
to revert it to the working codebase. Versioning helps to achievethis . Also, by
keeping a track of code commits by individuals, itis very easy to find the source of
the bug in the code.
Role prefer to be in the DevOpsteam
+
Answer: Basically the following are prominent in
DevOpsdepending upon the skillset. Architect Version ControlPersonnel Configuration
controlTeam Build and Integration management Deployment Team. Testing People QA Q5.
Architecture Monitoring Team Answer: In my opinion, everyone should owe to be
anarchitech. with this course, I will be fir the role from 2 to 5. Everyone
shouldunderstand the working of each role. Devops is a collective effort
ratherindividual effect.
Suppose you are put in to a project where you have toimplement
devops culture, what will be your approach
+
Answer: Before thinking of DevOps, there should be a clearcut
idea on what need to be implement and it should be done by the Seniorarchitect. If
we take a simple example of shopping market : Output of this business will be a
website which dis playsonline shopping items, and a payment platform for easy
payment. Even though it looks simple, the background work is not thateasy, because a
shopping cart must be : – 99.99% live Easy and fast processing of shopping items
Easy and fast payment system. – Quick reporting to shopkeeper – Quick Inventory
Management Fast customer interaction and many more DevOps has to be implement in
each process and phase. Nextis the tools used for bringing the latest items in
website with minimal timespan. Git, Jenkins, Ansible/Chef, AWS can be much of
familiar tools with helpsin continuous delivery to market.
Whether continuous deployment is possiblepractically
+
Answer: Ofcourse it is possible if we bring the Agility inevery
phase of development and deployment. The release, testing and deploymentautomation
should be so accurately finetuned
Agility in devops basically
+
Answer: Agile is an iterative form of process whichfinalizes
the application by fulfilling the checklis t. For any process, thereshould be set of
checklis t inorder to standardize the code as well as the buildand deployment
process. The lis t depends on the architecture of the applicationand business model.
Scripting using Bash, Python or any other languageis a must
for a DevOps team
+
Answer: Even though we have numerous tools in devops, butthere
will certain custom re Quirements for a project. In such cases, we have to make
useof scripting and then integrate it with the tools.
In AWS, how do you implement high availability ofwebsites
+
The main concept of high availability is that the websiteshould
be live all the time. So we should avoid single point of failure, inorderto achieve
this LoadBalancer can be used. In AWS, we can implement HA with LBwith AutoScaling
methods.
Debug inside a docker container
+
Answer: The feature “docker exec” allows usersto debug a
container
Docker Engine
+
It is open source container build and management tool
We need Docker
+
Answer: Applications were started to use Agile methodologywhere
they build and deployed iteratively . Docker helps is deploying same binaries with
dependenciesacross different environments with fraction of seconds
Docker daemon
+
Answer: Docker Daemon Receives and processes incoming API
reQuests from the CLI .
Docker client
+
Answer: Command line tool– a docker binaryand it communicate to
the Docker daemon through the Docker API.
Docker Hub Regis try
+
Answer: It is a Public image regis try maintanined by
Dockeritself and the Docker daemon talks to it through the regis try API
Install docker on a debian Linux OS
+
Answer: sudo apt-get install docker.io
Access does docker group have
+
Answer: The docker user have root like access and we
shouldrestrict access as we would protect root
Lis t the packages installed in Ubuntu container
+
Answer: dpkg -l lis ts the packages installed in
ubuntucontainer
We check status of the latest runningcontainer
+
Answer: With “docker ps -l” commandlis t latest running
processes
Stop a container
+
Answer: “docker kill “command to kill acontainer “docker stop
“command to stop a container
Lis t the stopped containers
+
Answer: docker ps -a ( –an all)
Docker image
+
Answer: An image is a collection of files and its meta data,
basically those files are the root filesystem of the container Image is madeup of
layers where each layer can be edited Q4.What is the differences between containers
andimages Answer: An image is an read-only filesystem where containeris a running
form of an image . Image is non-editable and on containers we can edit as wewis h &
save that again to a new image
Do changes in a docker image
+
Answer: No we can’t do changes in an image. we canmake changes
in a Dockerfile or to the exis ting container to create a layerednew image
Different ways to create new images
+
Answer: docker commit: to create an image from a
containerdocker build: to create an image using a Dockerfile
Store and manage images
+
Answer: Images can be stored in your local docker host or ina
regis try .
Download the images
+
Answer: Using “docker pull” command we candownload a docker
image
Image tags
+
Answer: Image tags are variants of Docker image .“latest” is
the default tag of an image
Dockerfile.
+
Answer: A Dockerfile series of instructions to build adocker
image Docker build command can be used to build
Build a docker file
+
Answer: docker build -t
View hostory of a docker image
+
Answer: The docker his tory command lis ts all the layers inan
image with image creation date, size and command used
CMD and ENTRYPOINT
+
Answer: These will allow using the default command to
beexecuted when a container is starting
EXPOSE instruction is used for
+
Answer: The EXPOSE command is used to publis h ports of adocker
container
Ansible
+
Answer: A configuration management toolsimilar to a puppet,
chef etc .
To choose Ansible
+
Answer: Ansible is simple and light where it needs only shhand
python as a dependency . It doesnt re Quired an agent to be installed
Ansible modules
+
Answer: Ansible “modules” are pre-defined smallset of codes to
perform some actions eg: copy a file, start a service
Ansible Tasks
+
Answer: Tasks are nothing but ansible modules with thearguments
Handlers in ansible
+
Answer: Handlers are triggered when there is need in changeof
state e.g.restart service when a property file have changed.
Roles in ansible
+
Answer: Roles are re-usable tasks or handlers.
YAML
+
Answer: YAML – yet another markup language is way ofstoring
data in a structured text format like JSON
Playbooks
+
Answer: Playbooks are the recipes to ansible
Validate in maven
+
Answer: Validate is to check whether the info provided
arecorrect and all necessary is available
Compile in maven
+
Answer: It is to compile the source code of theproject
Test in maven
+
Answer: It is to test the source code to test using
suitabletesting framework
Package in maven
+
Answer: It is to do the binary packaging of the compiledcode
Docker-compose
+
Answer: Compose is to define and run a
multi-containerapplication
Continuous integration
+
Answer: CI is nothing but giving immediate feedback to
thedeveloper by testing , analyzing the code .
Continuous delivery
+
Answer: Continuous delivery is a continuation of CI whichaims
in delivering the software until pre -prod automatically
Continuous deployment
+
Answer: Continuous deployment is next step after CI and CDwhere
the tested software will be provide to the end customers post somevalidation and
change management activities
Git commit
+
Answer: git commit records changes done to file in the
localsystem.
Git push
+
Answer: git push is to update the changes to the
remoterepository in the internet .
Git fetch
+
git fetch will pull only the data from the remote repo
butdoesnt merge with the repo in your local system.
Git pull
+
Answer: git pull will download the files from the remoterepo
and will merge with the files in your local system.
Reset the Last git Commit
+
Answer: “git reset” command can be used to undolast commit .
Need for DevOps
+
Answer: Start the answer by explaining general market trend,how
releasing small features benefits compared to releasing big features,advantages of
releasing small features in high fre Quency. Dis cuss about the topics such as
Increase deploymentfre Quency
QWrite the key components of DevOps
+
Answer: These are te key comonents of DevOps.
ContinuousIntegration
Various tools used in DevOps
+
Answer: DevOps contains various stages. Each stage can
beachieved with various tools. Below are the various toolthat are popularly
usedtools in DevOps. Version Control: Git , SVN
Version Control
+
Answer: Version ControlSystem (that are made to the filesor
documents over a period of time.
Types of Version ControlSystems
+
Answer: There are two types of Version ControlSystems:Central
Version ControlSystem, Ex: Git,Bitbucket
JenkinsIn jenkins, programminglanguage should be used
+
Answer: It is a open Source automation tool. it is a puposeof
Continuous Integration and Continuous Delivery. Jenkins is a written in
javaProgramming language. Q14. Give an explanation about DevOps. Answer: DevOps is
nothing but a practice that emphasizes thecollaboration and communication of both
software developers and implementationteam. It focuses on delivering software
product faster and lowering the failurerate of releases.
Key Principles or Aspects behindDevOps
+
Answer: The key Principles or Aspects are Infrastructure ascode
“Infrastructure code” is processed orexecuted in AWS
+
Answer: In AWS, Infrastructure code will be in simple
JSONformat After that JSON code will be organized into files called templates You
can Implement the templates on AWS DevOps and thenmanaged as stacks At last the
creating, deleting, updating, etc. operation inthe stack are done by Cloud Formation
Scripting language is most important for aDevOps engineer
+
Answer: It is very important to choose the simplest languagefor
DevOps engineer. Python Language is most suitable language forDevOps.
DevOps helps developers
+
Answer: Developers can fix bug and implement new featureswith
less time by the help of DevOps. DevOps can also help to build a
perfectcommunication system in a team with every team member.
Popular tools for DevOps
+
Answer: Popular tools for DevOps areJenkins
Usefulness of SSH
+
Answer: SSH is used to log into a remote machine and work onthe
command line and also used it to dig into the system to make possible securecoded
communications between two untrusted hosts over an insecurenetwork.
Would handle revis ion (version)control
+
Answer: I will post the code on SourceForge or GitHub togive
avis ual for everyone. I will post the checklis t also from the last revis ionto
make sure that any unsolved is sues are resolved.
Types of Http re Quests are
+
Answer: The types of Http re Quests are GET
If a Linux-build-server suddenly starts getting slowwhat will
you check
+
Answer: If a Linux-build-server suddenly starts gettingslow, I
will check for following three things Application Level troubleshooting:is sues
related with RAM, is sues related with Dis k I/O read write, is sues relatedwith Dis
k space, etc. System-Level troubleshooting: Check for Application logfile OR
application server log file, system performance is sues, Web Server Log– check HTTP,
tomcat log, etc. or check jboss, WebLogic logs to see if theapplication server
response/receive time is the is sues for slowness, Memory Leakof any application
Dependent Services troubleshooting: is sues related withAntivirus, is sues related
with Firewall, Network is sues, SMTP server responsetime is sues, etc Describe the
key components of DevOps. The most important DevOps components are:
ContinuousIntegration
Git Bis ect helps
+
Answer: Git bis ect helps you to find the commit
whichintroduced a bug using binary search.
Build
+
Answer: Build is a method in which you can put source
codetogether for checking that is the source code working as a single unit. In
thebuild creation process, the source code will undergo compilation,
inspection,testing, and deployment.
Two-factor authentication
+
Answer: Two-factor authentication is a security method inwhich
the user provides two ways of identification from separatecategories.
‘Canary Release’
+
Answer: It is a pattern which lowers the ris k of new
versionsoftware introduction into the production environment. User will get“Canary
Release” in a controlled manner before making it availableto the complete user set.
Important types of testing re Quired toensure new service is
ready for production
+
Answer: You need to run continuous testing to make sure thenew
service is ready for production.
Vagrant
+
Answer: Vagrant is a toolused to create and manage avirtual
version of computing environments for tests and softwaredevelopment. Usefulness of
PTR in DNS. Answer: PTR or Pointer record is used for reverse DNSlookup.
For DevOps success which are the bestpractices
+
Answer: Here, are essential best practices for
DevOpsimplementation: The speed of delivery means time taken for any task to get
theminto the production environment.
SubGit toolhelps
+
Answer: SubGit helps you to move SVN to Git. You can build
awritable Git mirror of a local or alien to Subversion repository by usingSubGit.
Q0. Name some of the prominent network monitoringtools. Answer: Some most prominent
network monitoring tools are:Splunk
Know if your video card can run UnityAnswer: When you use a
command
+
1 /usr/lib/Linux/unity_support_test- p it will give detailed
output about Unity’s re Quirements, and if they are met, then your video card canrun
unity.
Enable startup sound in Ubuntu
+
Answer: To enable startup sound Click controlgear and thenclick
on Startup Applications In the Startup Application Preferences window,click Add to
add an entry Then fill the information in comment boxes like Name,Command, and
Comment 1 /usr/bin/canberra-gtk- play—id=“desktop-login”—description= “play login
sound”Logout and then login once you are done You can use shortcut key Ctrl+Alt+T
toopen .
Fastest way to open an Ubuntu terminal ina particular
directory
+
Answer: To open an Ubuntu terminal in a particulardirectory,
you can use custom keyboard short cut. To do that, in the commandfield of a new
custom keyboard, type genome – terminal – –working – directory = /path/to/dir.
Get the current colour of the currentscreen on the Ubuntu
desktop
+
Answer: You have to open the background image in The Gimp(image
editor) and use the dropper tool to select the colour on a selectedpoint. It gives
you the RGB value of the colour at that point.
Create launchers on a desktop inUbuntu
+
Answer: You have to use ALT+F2 then
type”gnome-desktop-item-edit –create-new~/desktop,” it will launch theold GUI dialog
and create a launcher on your desktop in Ubuntu.
Explain what Memcached is
+
Answer: Memcached is an open source and free,high-performance,
dis tributed memory object caching system. The primaryobjective of Memcached is to
increase the response time for data otherwis e itcan be recovered or constructed
from some other source or database. Memcached is used to reduce the necessity of S
QL database operation or another source repetitively tocollect data for a
simultaneous re Quest. Memcached can be used for SocialNetworking->Profile Caching
Mention some important features of Memcached
+
Answer: Important features of Memcached includes CAS Tokens:A
CAS token is attached to an object retrieved from a cache. You can use thattoken to
save your updated object.
Is it possible to share a single instance of aMemcache between
multiple projects
+
Answer: Yes, it is possible to share a single instance
ofMemcache between multiple projects. You can run Memcache on more than one
serverbecause it is a memory store space. You can also configure your client to
speakto a particular set of case. So, you can run two different Memcache processes
onthe same host independently.
You are having multiple Memcache servers, one of thememcache
servers fails, and it has your data, can you recover key data from theperticular
failed server
+
Answer: Data won’t be removed from the server butthere is a
solution for auto-failure, which you can configure for multiplenodes. Fail-over can
be triggered during any socket or Memcached server levelerrors and not during
standard client errors like adding an exis ting key,etc.
Minimize the Memcached serveroutages
+
Answer: If you write the code to minimize cache stampedesthen
it will leave a minimal impact
Dogpile effectprevention of this effect
+
Answer: When a cache expires, and websites are hit by
themultiple re Quests made by the client at the same time the Dogpileeffect occurs.
You have to use semaphore lock to prevent the effect. In this system after value
expires, the first process ac Quires the lock and starts generating new value.
Memcached should not be used
+
Answer: You have to use Memcached as cache; don’t useit as a
data store.
Server gets shut down does data stored inMemcached is still
available
+
Answer: No after a server shuts down and then restart thestored
data in Memcached will be deleted because Memcached is unable to storedata for long
time.
Difference between Memcache andMemcached
+
Answer: Memcache: It is an extension that allows you to
workthrough handy object-oriented (OOP’s) and procedural interfaces. It is designed
to reduce database load in dynamic webapplications.
Containers
+
Answer: Containers are from of lightweight virtualizationand
create separation among process.
Post mortem meeting with reference toDevOps
+
Answer: In DevOps Post mortem meeting takes place to dis
cussabout the mis takes and how to repair the mis takes during the totalprocess.
Easiest method to build a smallcloud
+
Answer: VMfres is one of the best options to built IaaScloud
from Virtual Box VMs in lesser time. But if you want lightweight PaaS,then Dokku is
a better option because bash script can be PaaS out of Dokkucontainers. Q0. Name two
tools you can use for dockernetworking. Answer: You can use Kubernetes and Docker
swarm tools fordocker networking. Q1. Name some of DevOps Implementation area
Answer: DevOps are used for Production, Production feedback,IT operation, and its
software development.
CBD’
+
Answer: CBD or Component-Based Development is a uni Que way to
approach product development. In this method,Developers don’t develop a product from
scratch, they look for exis tingwell defined, tested, and verified components to
compose and assemble them to aproduct. Q3. Explain Pair Programming with reference
toDevOps Answer: Pair programming is an engineering practice ofExtreme Programming
Rules. This is the process where two programmers work on thesame system on the same
design/algorithm/code. They play two different roles inthe system. One as a“driver”
and other as an “observer”.Observer continuously observes the progress of a project
to identify problems.T hey both can change their roles in a step of theprogram.
Describe what DevOps is
+
DevOps is the new buzz in the IT world, swiftly spreadingall
through the technical space. Like other new and popular technologies, peoplehave
contradictory impressions of what DevOps is exactly. The main objective ofDevOps is
to alter and improve the relationship between the development and ITteams by
advocating better inter-communication and smoother collaborationbetween two units of
an enterpris e.
Programming language used in DevOps
+
Python is used in DevOps.
Necessity of DevOps
+
Corporations are now facing the necessity of carryingquicker
and improved requests to see the ever more persis tent demands of mindfulusers to
decrease the “Time to Marketplace.“ DevOps often benefitsplacement to occur very
profligately.
Areas where DevOps is implemented
+
By the passage of time, the need for DevOps is
continuouslyincreasing. However, these are the main areas it is implemented in-
Areas of Production Development areas productionfeedback development of IT
Operations
Agile expansion and Scrum
+
Agile growth used as a substitute for Waterfall
developmenttraining. In Agile, the expansion process is more iterative and additive;
thereare more challenging and response at every stage of development as opposed
toonly the latter stage in Waterfall. Scrum is used to accomplis h compositesoftware
and product growth, using iterative and additive performs. Scrum hasthree roles:
Product owner Scrum master Team
Name a few most famous DevOps tools
+
The most prevalent DevOps tools are stated below: Puppet Chef
Ansible Git Nagios DockerJenkins
Can we consider DevOps as an agile practice
+
Yes, DevOps is considered as an agile practice wheredevelopment
is driven by profound changing demands of professionals to stickcloser to the
corporate needs and requirements
DevOps engineer’s responsibilityconcerning Agile development
+
DevOps specialis t exertion very methodically with
Agiledevelopment teams to assurance they have a condition essential to
supportpurposes such as automatic testing, incessant Integration, and
unceasingDelivery. DevOps specialis t must be in continuous contact with the
developersand make all compulsory parts of environment work flawlessly.
Incessant Testing significant for DevOps
+
You can respond to this question by saying, “IncessantTesting
permits any change made in the code to be tested directly. This circumvents the
glitches shaped by having “big-bang” testingleft-hand to the end of the series such
as announcement postponements andquality matters. In this way, Incessant Testing
eases more recurrent and goodclass releases.”
Think is the role of SSH
+
SSH is a Secure Shell which gives the users a very secure
aswell encrypted mechanis m to safely log into systems and ensures the safetransfer
of files. It aids in the process of logging out of a remote machinealong with the
work on the command line. It helps in securing an encrypted andprotected end to end
communications between two hosts communicating over aninsecure network.
Differentiate DevOps from Agile
+
Agile is the technology which is all about softwaredevelopment,
whereas DevOps is the technology used for software deployment andmanagement.
Benefits of DevOps when seen from theTechnical and Business
viewpoint
+
The Technical assis tance features of DevOps can be givenas:
Software delivery is incessant. Decreases Difficulty inproblems. Quicker approach to
resolve problems Workforce is abridged. Business welfare features: A high degree of
bringing its features Steady operatingenvironments More time increased to Add
values. Allowing quicker feature time to market
You think DevOps is developers friendly
+
DevOps is developers friendly because it fixes the bugs
andimplements the new features very smoothly quickly. It is amazing because
itprovides the much-needed clarity of communication among team members.
Measures take to handle revis ion(version) control
+
To manage a successful revis ion control, you are required
topost your code on SourceForge or GitHub so that everyone on the team can view
itfrom there and also there is an option for viewers to give suggestions for
thebetter improvement of it. Q15). Lis t a few types of HTTP requests. A few types
of Http requests are” GET HEAD PUT POST PATCH DELETE TRACECONNECT OPTIONS Q16).
Explain the DevOps Toolchain. Here is the DevOps toolchain- Code Build Test Package
Release ConfigureMonitor Q17). Elucidate the core operations of DevOps
concerningdevelopment and Infrastructure. Here is a lis t of the core operations of
DevOps: Unit testing Packaging Code coverage Code developing Configuration
Orchestration Provis ioningDeployment
You think there is a need for ContinuousIntegration of
Development & Testing
+
Continuous Integration of Development and Testing enhancesthe
quality of software and highly deducts the time taken to deliverit, by replacing the
old-schoolpractice of testing only after completing allthe development process.
Q19). Name a few branching strategies used in DevOps A few branching strategies to
be used are- Feature Branching Task Branching Release Branching
Motive of GIT tools in DevOps
+
Read: What is the Difference between Agile and DevOps The
primary objective of Git is to efficaciously manage aproject or a given bundle of
files as they keep on changing over time. Git toolstores this important information
in a data structure kind of thing called a Gitrepository.
Explain what the major components of DevOpsare
+
The major components of DevOps are continuous
integration,continuous delivery, continuous integration, and continuous monitoring.
Steps should be taken when Linux-based-serversuddenly gets
slow
+
When a Linux-based-server suddenly becomes slow, then youshould
focus on three things primarily: Application level troubleshooting System
leveltroubleshooting Dependent level troubleshooting
Cloud platforms can be used for the successfulDevOps
implementation
+
Cloud platforms that can be used for the successful
DevOpsimplementation are given as: Google Cloud Amazon Web Services Microsoft Azure
Version ControlSystem (VCS)
+
VCS is a software application that helps software developersto
work together and maintain the complete his tory of their work.
Significant benefits of VCS (VersionControlSystem)
+
The significant benefits of using VCS can be givenas: It allows
team members to work simultaneously. All past variants and versions are packed
within VCS. A dis tributed VCS helps you to store the complete his tory ofthe
project. In case of a breakdown of the central server, you may use the localGIT
repository.
It allows you to see what exact changes are made to thecontent
of a file. What is a Git Bis ect
+
Git Bis ect helps you to find the commit which introduced abug
using the binary search. Here is the basic syntax for a Git Bis ect: Gitbis ect
Understand by the term build
+
A build is a method in the source code where the source codeis
put together to check how it works as a single unit. In the complete process,the
source code will undergo compilation, testing, inspection, anddeployment.
As per your experience, what is the most importantthing that
DevOps helps to achieve
+
The most important thing that DevOps helps us to achieve is to
get the changes in a product quickly while minimizing ris ks related tosoftware
quality and compliance. Other than this , there are more benefits ofDevOps that
include better communication, better collaboration among teammembers, etc. Q29). Dis
cuss one use case where DevOps can be implementedin the real-life. Etsy is a Company
that focuses on vintage, handmade, anduniquely manufactured items. There are
millions of Etsy users who are sellingproducts online. At this stage, Etsy decided
to follow a more agile approach.DevOps helped Etsy with a continuous delivery
pipeline and fully automateddeployment lifecycle. Q30). Explain your understanding
of both the softwaredevelopment side and technical operations side of an
organization you haveworked in the past recently. The answer to this question may
vary from person to person.Here, you should dis cuss the experience of how flexible
you were in your lastCompany. free DevOps demo DevOps Interview Questions and
Answers for advancedworkforce In this section, we will be dis cussing interview
questionsfor experienced people having more than three years of experience. Before
you gothrough questions directly, take this quiz first to become a little
moreconfident in your skills.
Anti-patterns in DevOps
+
A pattern is used by others, not by organizations and
youcontinue blindly follow it. You are essentially adopting anti-patternshere.
Git Repository
+
It is a version controlsystem that tracks changes to a fileand
allows you to revert to any particular changes.
In Git, how to revert a commit that has already beenmade
public
+
Remove or fix the commit and push it to the remoterepository.
This is the most natural style to fix an error. To do this , youshould use the
command given below: Git commit –m “commitmessage” Create a new commit that
undergoes all changes that weremade in the bad commit. Git revert
Process to squash last N number of commitsinto a single commit
+
There are two options to squash last N number of commitsinto a
single commit. To write a new commit message from scratch, you should usethe
following command: git reset –soft HEAD ~N && git commit To edit the exis ting
message, you should extract thosemessages first and pass them to the Git commit for
later usage. Git reset–soft HEAD ~ N&& git commit –edit –m “$(git log–format=%B
–reverse .HEAD {N})”
Git rebase and how to use it for resolvingconflicts in a
feature branch before merging
+
Git Rebase is a command that is used to merge another branchto
the exis ting branch where you are working recently. It moves all localcommits at
the top of the his tory of that branch. It effectively replays thechanges of feature
branch at the tip of master and allowing conflicts to beresolved in the process.
Moreover, the feature branch can be merged to the masterbranch with relative ease
and sometimes considered as the fast-forwardoperation.
Configure a git repository to run codesanity checking tools
right before making commits and preventing them if thetest fails
+
Sanity or smoke test determines continue the testingreasonably.
This is easy configuring a Git repository to run code sanitychecking before making
commits and preventing them if the test fails. It can bedone with a simple script as
mentioned below: #!/bin/sh file=$(git diff -cached -name-only -diff-filter=ACM |
grep'.go$') if [ -z file]; then exit 0 fi unfmtd=$(gofmt -I $files) if [ -z unfmtd];
then exit 0 fi eacho "some .go files are not fmt'd" exit1
Find a lis t of files that are changed in acertain manner
+
To get a lis t of files that are changed or modified in
aparticular way, you can use the following command: git diff-tree -r{hash}
Set up a script every time a repositoryreceives new commits
from a push
+
There are three techniques to set up a script every time
arepository receives new commits from Push. These are the pre-receive
hook,post-receive hook, and update hook, etc. Q). Write commands to know in Git if a
branch is merged tothe master or not. Here are the commands to know in Git if a
branch is mergedto the master or not. To lis t branches that are merged to the
current branch,you can use the following command: git branch -merged To lis t
branches that are not merged to the current branch,you can use the following
command: git branch – no-merged
Continuous integration in DevOps
+
It is a development practice that requires developers
tointegrate code into a shared repository multiple times a day. Each check-in is
verified with an automated build allowing teams to detect problems early.
Continuous integration necessary for thedevelopment and
testing team
+
It improves the quality of software and reduces the overalltime
to product delivery, once the development is complete. It allows thedevelopment team
to find and locate bugs at an early stage and merge them to theshared repository
multiple times a day for automating testing.
Are there any particular factors included incontinuous
integration
+
These following points you should include to answer this
Automate the build and maintain a code repository. Make thebuild self-tested and
fast. Testing should be done in a clone of the productionenvironment. It is easy
getting the latest deliverables.
Automate the deployment, and everyone should be able tocheck
the result of the latest build. Q43). What is the process to copy Jenkinsfrom one
server to another
+
There are multiple ways to copy Jenkins from one server
toanother. Let us dis cuss them below: You can move the job from one Jenkin
installation to anotherby simply copying the corresponding job directory. Make a
copy of the exis ting job and save it with a differentname in the job directory.
Rename the exis ting job and make necessary changes as perthe
requirement. Q44). How to create a file and take backups in Jenkins
+
For taking backup in Jenkins, you just need to copy
thedirectory and save it with a different name. Q45). Explain the process to set up
jobs in Jenkins. Go to the Jenkins page at the top, select the “newjob” option, and
choose “Build a free-style softwareproject.” Select the optional SCM where your
source coderesides. Select the optional triggers to controlwhen Jenkinsperforms
builds. Choose the preferable script that can be used to make thebuild. Collect the
information for the build and notify peopleabout the build results. Q46). Name a few
useful plugins in Jenkins. Some popular plugins in Jenkins can be given as:
Read: What is GitGit Tutorial Guide for Beginners Maven
2project
+
Amazon EC2 HTML publis her Copy artifact Join Green Balls
Secure Jenkins
+
Here are a few steps you should follow to secure theJenkins:
Make sure that global security option is on and Jenkins is integrated with the
company’s user directory with appropriate logindetails. Make sure that the project
matrix is enabled for the finetune access. Automate the process of setting
privileges in Jenkins withcustom version-controlled scripts. Limit the physical
access to Jenkinsdata/folders. Run the security audits periodically. Jenkins is one
of the popular tools used extensively inDevOps and hands-on training in Jenkins can
make you an expert in the DevOpsdomain.
Continuous testing in DevOps
+
It is the process of executing automated tests as part
ofsoftware delivery to receive immediate feedback within the latest build. In this
way, each build can be tested continuously allowing the development team to
getfaster feedback and avoid potential problems from progressing to the next stageof
the delivery cycle.
Automation testing in DevOps
+
It is the process of automating the manual process fortesting
an application under test (AUT). It involves the usage of differenttesting tools
that lets you creating test scripts that can be executedrepeatedly and does not
require any manual intervention.
Automation testing significant inDevOps
+
The automation testing is significant for the followingreasons
in DevOps: It supports the execution of repeated test cases. It helpsin testing a
large test matrix quickly. It helps in enabling the test execution. It
encouragesparallel execution. It improves accuracy by eliminating human intervened
errors.It helps in saving the overall time and investments.
Importance of continuous testing inDevOps
+
With continuous testing, all changes to the code can betested
automatically. It avoids the problem created by the big-bang approach atthe end of
the cycle like release delays or quality is sues etc. In this way,continuous testing
assures frequent and quality releases.
Major benefits of continuous testingtools
+
The major benefits of continuous testing tools can be
givenbelow. Policy analysis Ris k assessment Requirements traceability Test
optimization Advancedanalytics Service virtualization
Testing toolis just the best as per yourexperience
+
Selenium testing toolis just the best as per my experience.Here
are a few benefits makes it suitable for the workplace. It is an open source free
testing toolwith a large userbase and helping communities. It is compatible with
multiple browsers andoperating systems.
It supports multiple programming languages with
regulardevelopment and dis tributed testing. Q54). What are the different testing
typessupported by the Selenium
+
These are the Regression Testing and functionaltesting.
Two-factor authentication in DevOps
+
Two-factor authentication in DevOps is a security methodwhere
the user is provided with two identification methods from differentcategories.
Type of testing should be performed to make surethat a new
service is ready for production
+
It is continuous testing that makes sure that a new serviceis
ready for production.
Puppet
+
It is a configuration management toolin DevOps that helpsyou in
automating adminis tration tasks.
Understand by the term CanaryRelease
+
It is a pattern that reduces the ris k of introducing a
newversion of the software into the production environment. It is made available ina
controlled manner to the subset of users before releasing to the complete setof
users.
Objective of using PTR in DNS
+
PTR means pointer record that is required for a reverse
DNSlookup.
Vagrant in DevOps
+
It is a DevOps toolthat is used for creating and
managingvirtual environments for testing and developing software programs. DevOps
Job Interview Questions and Answers
Prerequis ites for the successfulimplementation of DevOps
+
Here are the prerequis ites for the successful implementationof
DevOps: One Version controlsystem Automated testing Automateddeployment Proper
communication among team members
Best practices to follow for DevOpssuccess
+
Here are the essential practices to follow for DevOpssuccess:
The speed of delivery time taken for a task to get them intothe production
environment. Focus on different types of defects in thebuild. Check the average time
taken to recover in case offailure.
Total number of reported bugs by customers impacting
thequality of an application. Q63). What is a SubGit tool
+
A SubGit toolhelps in migrating from SVN to Git. It allowsyou
to build a writable Git mirror of a remote or local subversionrepository. Q64). Name
a few networks migrating tools. Splunk Icinga 2 Wireshark NagiosOpenNMS
Check either your video card can run Unity ornot
+
Here is the command to check either your video card can
rununity or not: /usr/lib/linux/unity_support_test-p It will give you a depth of
unity’s requirements. Ifthey are met, your video card can run Unity.
Enable the start-up sounds in ubuntu
+
To enable the start-up sounds in Ubuntu, you should followthese
steps: Click controlgear then click on startupapplications. In the “startup
application preferences” window,click “Add” to add a new entry. Add the following
command in the comment boxes:/usr/bin/Canberra-gtk-play-id= “desktop-login” –
description=“play login sound” Now, log out from the account once you are done.
Quickest way of opening an Ubuntu terminalin a particular
directory
+
For this purpose, you can use the custom keywordshortcuts. To
do that, in the command field of a new custom keyboard,type genome –terminal
–working –directory = /path/to/dir.
Get the current color of the screen on theUbuntu desktop
+
You should open the background image and use a dropper toolto
select the color at a specific point. It will give you the RGB value for thatcolor
at a specific point.
Create launchers on a Ubuntu Desktop
+
To create a launcher on a Ubuntu desktop, you should use
thefollowing command: ALT+F2 then type“gnome-desktop-item-edit-create-new~/desktop,”
it will launch theold GUI dialog and create a launcher on your desktop
Memcached in DevOps
+
It is an open source, high speed, dis tributed memory
object.Its primary objective is enhancing the response time of data that can
otherwis ebe constructed or recovered from another source of database. It avoids the
needfor operating SQL database repetitively to fetch data for a concurrentrequest.
DevOps quiz
Memcached in useful
+
It speeds up the application processes. It determines whatto
store and share. It reduces the total number of retrieval requests to thedatabase.
It cuts the I/O access from the hard dis k.
Drawbacks of Memcached
+
It is not a persis tent data store It is not adatabase. It is
not application-specific. It is not able to cache large objects.
Features of Memcached
+
A few highlighted features of Memcached can be givenas: CAS
Tokens that are used to store the updated objects.Callbacks to simplify the code.
GetDelayed to reduce the response or wait time for theoutcome. A binary protocolto
use with the new client. Igbinary data option is available to use with the
complexdata.
Can you share a single instance of Memcached withmultiple
instances
+
Read: Top 20 Git Interview Questions and Answers 2018 Yes,it is
possible.
If you have multiple Memcached servers and one of theMemcached
servers gets failed, then what will happen
+
Even if one of the Memcached servers gets failed, datawon’t get
lost, but it can be recovered by configuring it for multiplenodes.
Minimize the Memcached server outages
+
If one of the server instances get failed, it will put ahuge
load on the database server. To avoid this , the code should be written insuch a way
that it can minimize the cache stampedes and leave a minimal impacton the database
server. You can bring up an instance of Memcached on a new machinewith the help of
lost IP addresses. You can modify the Memcached server lis t tominimize the server
outages. Set up the timeout value for Memcached server outages. Ifthe server gets
down, it will try to send a request to the client until thetimeout value is
achieved.
Update Memcached when data changes
+
To update the Memcached in case of data changes, you can
usethese two techniques: Clear the cache proactively Reset the Cache
Dogpile effect and how to prevent it
+
Dogpile effect refers to the event when the cache expires,and
website hits by multiple requests together at the same time. The semaphorelock can
minimize this effect. When the cache expires, the first processacquires the lock and
generates new value as required.
Explain when Memcached should not be used
+
It should not be used as a datastore but a cacheonly. It should
not be taken the only source of information to runyour apps, but the data should be
available through other sources too. It is just a value store or a key and cannot
perform a queryor iterate over contents to extract the information. It does not
offer anysecurity for authentication or encryption.
Significance of the blue/green color indeployment pattern
+
These two colors are used to represent tough
deploymentchallenges for a software project. The live environment is the Blue
environment.When the team prepares the next release of the software, it conducts the
finalstage of testing in the Green environment.
Container
+
Containers are lightweight virtualizations that offeris olation
among processes.
Post mortem meeting in DevOps
+
A post mortem meeting dis cusses what went wrong and whatsteps
to be taken to avoid failures. Q3). Name two tools that can be used for
Docketnetworking. These are Docker Swarm and Kubernetes.
Build a small cloud quickly
+
Dokku can be a good option to build a small cloudquickly.
Name a few common areas where DevOps is implemented
+
These are IT, production, operations, marketing,
softwaredevelopment, etc.
Pair programming in DevOps
+
It is a development practice of extreme programmingrules.
CBD in DevOps
+
CBD or component-based development is a unique style
ofapproaching product development.
Resilience Test in DevOps
+
It ensures the full recovery of data in case offailure. Q).
Name a few important DevOps KPis . Three most important KPis of DevOps can be given
as: Meantime to failure recovery Percentage of faileddeployments Deployment
Frequency
Difference between asset and configurationmanagement
+
Asset management refers to any system that monitors
andmaintains things of a group or unit. Configuration Management is the process
ofidentifying, controlling, and managing configuration items in support of
changemanagement.
HTTP work
+
An HTTP protocolworks like any other protocolin aclient-server
architecture. The client initiates a request, and the serverresponds to it.
Chef
+
It is a powerful automated toolfor transforminginfrastructure
into code.
Define a resource in Chef
+
A resource is a piece of infrastructure and its desiresstate
like packages should be installed, services should be in running state,the file
could be generated, etc.
Define a recipe in Chef
+
A recipe is a collection of resources describing aparticular
configuration or policy.
Cookbook different from the recipe inChef
+
The answer is pretty direct. A recipe is a collection
ofresources, and a Cookbook is a collection of recipes and otherinformation.
Ansible Module
+
Modules are considered as a unit of work in Ansible. Eachmodule
is standalone, and it can be written in common scriptinglanguages.
Playbooks in Ansible
+
Playbooks are Ansible’s orchestration, configuration,and
deployment languages. They are written in human-readable basic textlanguage.
Check the complete lis t of Ansiblevariables
+
You can use this command to check the complete lis t ofAnsible
variables. Ansible –m setup hostname
Nagios
+
It is a DevOps toolfor continuous monitoring of
systems,business processes, or application services, etc.
Q0)What are plugins in DevOps
+
Plugins are scripts that are run from a command line tocheck
the status of Host or Service.
Benefits OfDevOps
+
DevOps is gaining more popularity day by day. Here are
somebenefits of implementing DevOps Practice. Release Velocity:DevOps enable
organizations to achieve a great release velocity. We canrelease code to production
more often and without any hectic problems. Development Cycle:DevOps shortens the
development cycle from initial design toproduction. Full Automation:DevOps helps to
achieve full automation from testing, to build, releaseand deployment. Deployment
Rollback:In DevOps, we plan for any failure in deployment rollback due to a bugin
code or is sue in production. This gives confidence in releasing featurewithout
worrying about downtime for rollback. Defect Detection:With DevOps approach, we can
catch defects much earlier than releasingto production. It improves the quality of
the software. Collaboration:WithDevOps, collaboration between development and
operations professionalsincreases. Performance-oriented:With DevOps, organization
follows performance-oriented culturein Feb-71 which teams become more productive and
moreinnovative.
Typical DevOps workflow
+
The typical DevOps workflow is as follows: Atlassian Jira for
writingrequirements and tracking tasks. Based on the Jira tasks,developers checking
code into GIT version controlsystem. The code checked into GIT is built by using
Apache Maven. The build process is automatedwith Jenkins. During the build
process,automated tests run to validate the code checked in by adeveloper. Code
built on Jenkins is sentto organization’s Artifactory. Jenkins automatically
picksthe libraries from Artifactory and deploys it to Production. During Production
deployment,Docker images are used to deploy same code on multiplehosts. Once a code
is deployed toProduction, we use monitoring tools like ngios are used tocheck the
health of production servers. Splunk based alerts inform theadmins of any is sues or
exceptions in production.
DevOps Vs Agile
+
Agile is a set of values and principles about how to
developsoftware in a systematic way. Where as DevOPs is a way to quickly, easily and
repeatablymove that software into production infrastructure, in a safe and
simpleway. In oder to achieve that we use a set of DevOps tools andtechniques.
Most ImportantThing DevOps Helps Us To Achieve
+
Most important aspect of DevOps is to get the changes
intoproduction as quickly as possible while minimizing ris ks in software
qualityassurance and compliance. This is the primary objective of DevOps. What Are
Some DevOps tools. Here is a lis t of some most important DevOps tools Git Jenkins,
Bamboo Selenium Mar-71 Puppet, BitBucket Chef Ansible, Artifactory Nagios Docker
Monit ELK –Elasticsearch,Logstash, Kibana Collectd/Collect
DeploySoftware
+
Code is deployed by adopting continuous delivery bestpractices.
Which means that checked in code is built automatically and thenartifacts are publis
hed to repository servers. On the application severs there are deployment
triggersusually timed by using cron jobs. All the artifacts are then downloaded
anddeployed automatically. Gradle DevOps Interview Questions
Gradle
+
Apr-71 Gradle is an open-source build automation system that
buildsupon the concepts of Apache Ant and Apache Maven. Gradle has a
properprogramming language instead of XML configuration file and the language is
called ‘Groovy’. Gradle uses a directed acyclic graph("DAG") to determine the order
in which tasks can be run. Gradle was designed for multi-project builds, which can
growto be quite large. It supports incremental builds by intelligently
determiningwhich parts of the build tree are up to date, any task dependent only on
thoseparts does not need to be re-executed.
Advantages of Gradle
+
Gradle provides many advantages and here is a lis t Declarative
Builds:Probably one of the biggest advantage of Gradleis Groovy language. Gradle
provides declarative languageelements. Which providea build-by- convention support
for Java, Groovy, Web andScala. Structured Build:Gradle allows developers to apply
common designprinciples to their build. It provides a perfect structurefor build, so
that well-structured and easily maintained, comprehensible buildstructures can be
built. Deep API:Using this API, developers can monitor andcustomize its
configuration and executionbehaviors. Scalability:Gradle can easily increase
productivity, fromsimple and single project builds to huge enterpris emulti-project
builds.Multi-project builds:Gradle supports multi-project buildsand also partial
builds. Build management:Gradle supports different strategies to manage project
dependencies. First buildintegration tool − Gradle completelysupports ANT tasks,
Maven and lvy repositoryinfrastructure for publis hing and retrieving dependencies.
It also provides aconverter for turning a Maven pom.xml to Gradle script. Ease of
migration:Gradle can easily adapt to any projectstructure. Gradle Wrapper:Gradle
Wrapper allows developers to executeGradle builds on machines where Gradle is not
installed.This is useful for continuous integration of servers. Free open source−
Gradle is an open source project, andlicensed under the Apache Software License
(ASL). Groovy:Gradle's build scripts are written inGroovy, not XML. But unlike other
approaches this is notfor simply exposing the raw scripting power of a dynamic
language. The wholedesign of Gradle is oriented towards being used as a language,
not as a rigidframework.
Gradle is Preferred Over Maven or Ant
+
May-71 There is n't a great support for multi-project builds
inAnt and Maven. Developers end up doing a lot of coding to support
multi-projectbuilds. Also having some build-by-convention is nice and makes
buildscripts more concis e. With Maven, it takes build by convention too far,
andcustomizing your build process becomes a hack. Maven also promotes every project
publis hing an artifact.Maven does not support subprojects to be built and versioned
together. But with Gradle developers can have the flexibility of Antand build by
convention of Maven. Groovy is easier and clean to code than XML. In
Gradle,developers can define dependencies between projects on the local file
systemwithout the need to publis h artifacts to repository. Gradle Vs Maven The
following is a summary of the major differences betweenGradle and Apache Maven:
Flexibility:Googlechose Gradle as the official build toolfor Android; not because
build scriptsare code, but because Gradle is modeled in a way that is extensible in
the mostfundamental ways. Both Gradle and Maven provide convention over
configuration.However, Maven provides a very rigid model that makes customization
tedious andsometimes impossible. While this can make it easier to understand any
given Mavenbuild, it also makes it unsuitable for many automation problems. Gradle,
on theother hand, is built with an empowered and responsible user in mind.
Performance Both Gradle and Maven employ some form of parallel projectbuilding and
parallel dependency resolution. The biggest differences areGradle's mechanis ms for
work avoidance and incrementally. Followingfeatures make Gradle much faster than
Maven: Incrementally:Gradle avoids work bytracking input and output of tasks and
only running whatis necessary. BuildCache:Reuses the build outputs of any
otherGradle build with the same inputs. GradleDaemon:A long-lived process that keeps
buildinformation "hot" in memory. User Experience Maven's has a very good support
for various IDE's.Gradle's IDE support continues to improve quickly but is not great
as ofMaven. Jun-71 Although IDEs are important, a large number of users preferto
execute build operations through a command-line interface. Gradle provides amodern
CLI that has dis coverability features like `gradle tasks`, as well asimproved
logging and command-line completion. Dependency Management Both build systems
provide built-in capability to resolvedependencies from configurable repositories.
Both are able to cache dependencieslocally and download them in parallel. As a
library consumer, Maven allows one to override adependency, but only by version.
Gradle provides customizable dependencyselection and substitution rules that can be
declared once and handle unwanteddependencies project-wide. This substitution
mechanis m enables Gradle to buildmultiple source projects together to create
composite builds. Maven has few, built-in dependency scopes, forcesawkward module
architectures in common scenarios like using test fixtures orcode generation. There
is no separation between unit and integration tests, forexample. Gradle allows
custom dependency scopes, providesbetter-modeled and faster builds.
Gradle Build Scripts
+
Gradle builds a script file for handling projects and
tasks.Every Gradle build represents one or more projects. A project represents a
library JAR or a webapplication.
Gradle Wrapper
+
The wrapper is a batch script on Windows, and a shell scriptfor
other operating systems. Gradle Wrapper is the preferred way of starting aGradle
build. When a Gradle build is started via the wrapper, Gradle willautomatically
download and run the build.
Gradle Build Script File Name
+
This type of name is written in the format that is
build.gradle. It generally configures the Gradle scripting language.
Add Dependencies In Gradle
+
In order to make sure that dependency for your project is
added, you need to mention the Jul-71 configuration dependency like compiling the
blockdependencies of the build.gradle file.
Gradle Daemon
+
A daemon is a computer program that runs as a
backgroundprocess, rather than being under the direct controlof an interactiveuser.
Gradle runs on the Java Virtual Machine (JVM) and usesseveral supporting libraries
that require a non-trivial initializationtime. As a result, it can sometimes seem a
little slow to start.The solution to this problem is the Gradle Daemon : a
long-lived background processthat executes your builds much more quickly than would
otherwis e be thecase. We accomplis h this by avoiding the expensive
bootstrappingprocess as well as leveraging caching, by keeping data about your
project inmemory. Running Gradle builds with the Daemon is no different thanwithout
Dependency Management in Gradle
+
Software projects rarely work in is olation. In most cases,
aproject relies on reusable functionality in the form of libraries or is brokenup
into individual components to compose a modularized system. Dependency management is
a technique for declaring,resolving and using dependencies required by the project
in an automatedfashion. Aug-71 Gradle has built-in support for dependency management
andlives up the task of fulfilling typical scenarios encountered in modern
softwareprojects. What Are Benefits Of Daemon in Gradle 3.0 Here are some of the
benefits of Gradle daemon It has good UX It is very powerful It is aware of the
resource It is well integrated with the Gradle Build scans It has been default
enabled
Gradle Multi-Project Build
+
Multi-project builds helps with modularization. It allows
aperson to concentrate on one area of work in a larger project, while Gradletakes
care of dependencies from other parts of the project A multi-project build in Gradle
consis ts of one rootproject, and one or more subprojects that may also have
subprojects. While each subproject could configure itself in completeis olation of
the other subprojects, it is common that subprojects share commontraits. It is then
usually preferable to share configurations amongprojects, so the same configuration
affects several subprojects.
Gradle Build Task
+
Gradle Build Tasks is made up of one or more projects and
aproject represents what is been done with Gradle. Some key of features of Gradle
Build Tasks are: Task has life cycled methods [do first, do last] Build Scripts are
code Default tasks like run, clean etc Task dependencies can be defined using
properties likedependsOn
Gradle Build Life Cycle
+
Sep-71 Gradle Build life cycle consis ts of following
threesteps -Initialization phase:In this phase the project layer or objects are
organized -Configuration phase:In this phase all the tasks are available for the
current build and adependency graph is created -Execution phase:Inthis phase tasks
are executed.
Gradle Java Plugin
+
The Java plugin adds Java compilation along with testing
andbundling capabilities to the project. It is introduced in the way of a
SourceSetwhich act as a group of source files complied and executed together.
Dependency Configuration
+
A set of dependencies is termed as dependency
configuration,which contains some external dependencies for download and
installation. Here are some key features of dependency configurationare: Compile:
The project must be able to compile together Runtime: It is the required time needed
to get the dependency work inthe collection. Test Compile: The check source of the
dependencies is to be collected inorder to run the project. Test Runtime: The final
procedure is to check and run the test which is bydefault act as a runtime mode.
Groovy DevOps Interview Questions Oct-71
Groovy
+
Apache Groovy is a object-oriented programming language forthe
Java platform. It is both a static and dynamic language with featuressimilar to
those of Python, Ruby, Perl, and Smalltalk. It can be used as both a programming
language and ascripting language for the Java Platform, is compiled to Java virtual
machine(JVM) bytecode, and interoperates seamlessly with other Java code
andlibraries. Groovy uses a curly-bracket syntax similar to Java. Groovysupports
closures, multiline strings, and expressions embedded instrings. And much of
Groovy's power lies in itsASTtransformations, triggered through annotations.
Groovy is Gaining Popularity
+
Here are few reasons for popularity of Groovy Familiar OOP
languagesyntax. Extensive stock of variousJava libraries Nov-71 Increased
expressivity (typeless to do more) Dynamic typing (lets you codemore quickly, at
least initially) Closures Native associativearray/key-value mapping support (you can
create an associative array literal) String interpolation (cleanercreation of
strings dis playing values) Regex's being first classcitizens is Meant By Thin
Documentation InGroovy Groovy is documented very badly. In fact the
coredocumentation of Groovy is limitedand there is no information regarding
thecomplex and run-time errors that happen. Developers are largely on there own and
they normally haveto figure out the explanations about internal workings by
themselves.
Run Shell Commands in Groovy
+
Groovy adds the execute method to String to makeexecuting
shells fairly easy println "ls".execute().text
In How Many Platforms you can use Groovy
+
These are the infrastructure components where we can usegroovy:
-Application Servers -Servlet Containers -Databases with JDBC drivers -All other
Java-based platforms
Can Groovy Integrate With Non Java BasedLanguages
+
image It is possible but in this case the features are
limited.Groovy cannot be made to handle all the tasks in a manner it has to.
Pre-Requirements For Groovy
+
Dec-71 image Installing and using Groovy is easy. Groovy does
not havecomplex system requirements. It is OS independent. Groovy can perform
optimally in every situation.There aremany Java based components in Groovy,which
make it even more easier to work withJava applications.
Questions: What is Closure In Groovy
+
A closure in Groovy is an open, anonymous, block of codethat
can take arguments, return a value and be assigned to a variable. A closuremay
reference variables declared in its surrounding scope. In opposition to theformal
definition of a closure, Closure in the Groovy language can also contain free
variables which aredefined outside of its surrounding scope. A closure definition
follows this syntax: { [closureParameters -> ] statements } Where
[closureParameters->] is an optional comma-delimited lis t of parameters,
andstatements are 0 or more Groovy statements. The parameters look similar to
amethod parameter lis t, and these parameters may be typed or untyped. When a
parameter lis t is specified, the -> character is required and serves toseparate the
arguments from the closure body. The statements portion consis ts of 0, 1, ormany
Groovy statements.
ExpandoMeta Class In Groovy
+
Through this class programmers can add properties,constructors,
methods and operations in the task. It is a powerful optionavailable in the Groovy.
By default this class cannot be inherited and users need tocall explicitly. The
command for this is “ExpandoMetaClass.enableGlobally()”.
Limitations Of Groovy
+
Groovy has some limitations. They are described below It can be
slower than theother object-oriented programming languages. It might need memory
more thanthat required by other languages. The start-up time of groovyrequires
improvement. It is not that frequent. For using groovy, you need tohave enough
knowledge of Java. Knowledge of Java is important because half of groovy is based on
Java. 13/71 It might take you some time toget used to the usual syntax and default
typing. It consis ts of thindocumentation. How To Write HelloWorld Program In Groovy
The following is a basic Hello World program written inGroovy: class Test { static
void main(String[] args) { println('Hello World'); } }
Declare String In Groovy
+
In Groovy, the following steps are needed to declare astring.
The string is closed withsingle and double qotes. It contains Groovy
Expressionsnoted in ${} Square bracket syntax may beapplied like charAt(i)
Differences Between Java And Groovy
+
Groovy tries to be as natural as possible for Javadevelopers.
Here are all the major differences between Java and Groovy. -Default imports In
Groovy all these packages and classes are imported bydefault, i.e. Developers do not
have to use an explicit import statement to use them: java.io.* java.lang.*
java.math.BigDecimal java.math.BigInteger java.net.* java.util.* groovy.lang.*
groovy.util.* -Multi-methods 14/71 In Groovy, the methods which will be invoked are
chosen atruntime. This is called runtime dis patch or multi-methods. It means that
themethod will be chosen based on the types of the arguments at runtime. In
Java,this is the opposite: methods are chosen at compile time, based on the
declaredtypes. -Array initializers In Groovy, the { … } block is reserved for
closures. That means that you cannotcreate array literals with this syntax: int[]
arraySyntex = { 6, 3, 1} You actually have to use: int[] arraySyntex = [1,2,3] -ARM
blocks ARM (Automatic Resource Management) block from Java 7 arenot supported in
Groovy. Instead, Groovy provides various methods relying onclosures, which have the
same effect while being more idiomatic. -GStrings As double-quoted string literals
are interpreted as GString values, Groovy may fail withcompile error or produce
subtly different code if a class with String literal containing a dollar character
is compiled with Groovy and Java compiler. While typically, Groovy will auto-cast
between GString and String if an API declares the type of a parameter, beware of
JavaAPis that accept an Object parameterand then check the actual type. -String and
Character literals Singly-quoted literals in Groovy are used for String , and
double-quoted result in String or GString , depending whether there is interpolation
in the literal. image image assert 'c'.getClass()==String
assert"c".getClass()==String assert "c${1}".getClass() in GString Groovy will
automatically cast a single-character String to char only when assigning to a
variable of type char . When calling methods with arguments oftype char we need to
either castexplicitly or make sure the value has been cast in advance. char a='a'
assert Character.digit(a, 16)==10 : 'But Groovy doesboxing' assert
Character.digit((char) 'a', 16)==10 try { assert Character.digit('a', 16)==10 assert
false:'Need explicit cast' 15/71 } catch(Mis singMethodException e) { } Groovy
supports two styles of casting and in the case ofcasting to char there are
subtledifferences when casting a multi-char strings. The Groovy style cast is
morelenient and will take the first character, while the C-style cast will fail
withexception. // for single char strings, both arethe same assert ((char)
"c").class==Character assert ("c" as char).class==Character // for multi char
strings they arenot try { ((char) 'cx') == 'c' assert false: 'will fail - not
castable' } catch(GroovyCastException e) { } assert ('cx' as char) == 'c'
assert'cx'.asType(char) == 'c' -Behaviour of In Java == meansequality of primitive
types or identity for objects. In Groovy == translates to a.compareTo(b)==0 , if
they are Comparable , and a.equals(b) otherwis e. To check for identity, there is is
. E.g. a.is (b) .image
Test Groovy Application
+
The Groovy programming language comes with great support
forwriting tests. In addition to the language features and test integration
withstate-of-the-art testing libraries and frameworks. The Groovy ecosystem has born
a rich set of testinglibraries and frameworks. Groovy Provides following testing
capabilities Junit Integrations Spock for specifications Geb for Functional Test
Groovy also has excellent built-in support for a range ofmocking and stubbing
alternatives. When using Java, dynamic mocking frameworksare very popular. A key
reason for this is that it is hard work creatingcustom hand-crafted mocks using
Java. Such frameworks can be used easily with Groovy.
Power Assertions In Groovy
+
16/71 Writing tests means formulating assumptions by
usingassertions. In Java this can be done by using the assert keyword. But Groovy
comes with a powerful variant of assert also known as power assertion statement .
Groovy’s power assert differs from the Java version in its output given the
booleanexpression validates to false : def x = 1 assert x == 2 // Output: // //
Assertion failed: // assert x == 2 // | | // 1 false This section shows the std-err
output The java.lang.AssertionError that is thrown whenever the assertion can not be
validatedsuccessfully, contains an extended version of the original exception
message.The power assertion output shows evaluation results from the outer to the
innerexpression. The power assertion statements true power unleashes in
complexBoolean statements, or statements with collections or other toString -enabled
classes: def x = [1,2,3,4,5] assert (x << 6)==[6,7,8,9,10] // // // Output:
Assertion failed: // assert (x << 6)==[6,7,8,9,10] // | | | // | | false // |
[1, 2, 3, 4, 5, 6] // [1, 2, 3, 4, 5, 6]
Can We Use Design Patterns In Groovy
+
Design patterns can also be used with Groovy. Here
areimportant points Some patterns carry overdirectly (and can make use of normal
Groovy syntax improvements for greater readability) Some patterns are no
longerrequired because they are built right into the language orbecause Groovy
supports a better way of achieving the intent of thepattern some patterns that
have to beexpressed at the design level in other languages can be implemented
directly inGroovy (due to the way Groovy can blur the dis tinction between
design andimplementation)
Parse And Produce JSON Object InGroovy
+
17/71 Groovy comes with integrated support for converting
betweenGroovy objects and JSON. The classes dedicated to JSON serialis ation and
parsingare found in the groovy.json a class that parses JSON text or reader
content into Groovydata structures (objects) such as maps, lis ts and primitive
types like Integer , Double , Boolean and String . The class comes with a bunch
of overloaded parse methods plus some special methods such as parseText ,
parseFile and others
Difference Between XmlParser AndXmlSluper
+
XmlParser and XmlSluper are used for parsing XML
withGroovy. Both have the same approach to parse an xml. Both come with a bunch
of overloaded parse methods plus somespecial methods such as parseText
,parseFile and others. XmlSlurper def text = ''' Groovy ''' def lis t = new
XmlSlurper().parseText(text) assert lis t
instanceofgroovy.util.slurpersupport.GPathResult assert lis t.technology.name
=='Groovy' Parsing the XML an returning the root node as aGPathResult Checking
we’re using a GPathResult Traversing the tree in a GPath style XmlParser 18/71
def text = ''' Groovy ''' def lis t = new XmlParser().parseText(text) assert lis
t instanceof groovy.util.Node assertlis t.technology.name.text() == 'Groovy'
Parsing the XML an returning the root node as a Node Checking we’re using a Node
Traversing the tree in a GPath style Let’s see the similarities betweenXMLParser
andXMLSlurperfirst: Both are based on SAX so they both are low memory footprint
image Both canupdate/transform the XML But they have key differences: XmlSlurper
evaluates the structurelazily. So if you update the xml you’ll have to evaluate
the whole treeagain. XmlSlurper returns GPathResult instances when parsing XML
XmlParser returns Node objects when parsing XML
Use one or the another
+
If you want to transform anexis ting document to another
then be the choice If you want to update and readat the same time then XmlParser
is the choice. Maven DevOps Interview Questions 19/71 image
Maven
+
Mavenis a buildautomation toolused primarily for Java
projects. Maven addresses twoaspects of building software: First:It describeshow
software is built Second:It describesits dependencies. Unlike earlier tools like
Apache Ant, it uses conventionsfor the build procedure, and only exceptions need
to be written down. An XML file describes the software project being built,
itsdependencies on other external modules and components, the build
order,directories, and required plug-ins. It comes with pre-defined targets for
performing certainwell-defined tasks such as compilation of code and its
packaging. Maven dynamically downloads Java libraries and Mavenplug-ins from one
or more repositories such as the Maven 2 Central Repository,and stores them in a
local cache. This local cache of downloaded artifacts can also be updatedwith
artifacts created by local projects. Public repositories can also beupdated.
20/71
Benefits Of Maven
+
One of the biggest benefit ofMaven is that its design
regards all projects as having acertain structure and a set of supported task
work-flows. Maven has quick project setup,no complicated build.xml files, just a
POM and go All developers in aproject use the same jar dependencies due to
centralized POM. In Maven getting a numberof reports and metrics for a project
"for free" It reduces the size of sourcedis tributions, because jars can be
pulled from a centrallocation Maven lets developers get yourpackage dependencies
easily With Maven there is no need toadd jar files manually to the class path
Build Life cycles In Maven
+
Build lifecycle is a lis t of named phases that can be
usedto give order to goal execution. One of Maven's standard life cycles is the
default lifecycle , whichincludes the following phases, in this order validate
generate-sources process-sources generate-resources process-resources compile
process-test-sources process-test-resources test-compile test package install
deploy
Meant By Build Tool
+
Build tools are programs that automate the creation
ofexecutable applications from source code. Building incorporates
compiling,linking and packaging the code into a usable or executable form. In
small projects, developers will often manually invoke thebuild process. This is
not practical for larger projects. Where it is very hard to keep track of what
needs to bebuilt, in what sequence and what dependencies there are in the
building process.Using an automation toollike Maven, Gradle or ANT allows the
build process tobe more consis tent. 21/71
Dependency Management Mechanis m InGradle
+
image Maven's dependency-handling mechanis m is
organizedaround a coordinate system identifying individual artifacts such as
softwarelibraries or modules. For example if a project needs Hibernate library.
Ithas to simply declare Hibernate's project coordinates in its POM. Maven will
automatically download the dependency and thedependencies that Hibernate itself
needs and store them in the user's localrepository. Maven 2 Central Repository
is used by default tosearch for libraries, but developers can configure the
custom repositories to beused (e.g., company-private repositories) within the
POM.
Central Repository Search Engine
+
The Central Repository Search Engine, can be used to
findout coordinates for different open-source libraries and frameworks.
Plugins In Maven
+
Most of Maven's functionality is in plugins. Aplugin
provides a set of goals that can be executed using the followingsyntax: mvn
[plugin-name]:[goal-name] For example, a Java project can be compiled with
thecompiler-plugin's compile-goal by running mvncompiler:compile . There are
Maven plugins for building,testing, source control management, running a web
server, generating Eclipseproject files, and much more. image Plugins are
introduced and configured in a -section of a pom.xml file. Some basic plugins
are included in every project by default, andthey have sensible default
settings.
Questions: What is Difference Between Maven And ANT
+
Ant Maven Ant is a toolbox. Maven is a framework. There is
no life cycle. There is life cycle. 22/71 Ant doesn't have formal Maven has a
convention to place source code,compiled code conventions. etc. Ant is
procedural. Maven is declarative. The ant scripts are not reusable. The maven
plugins are reusable.
POM In Maven
+
A Project Object Model (POM) provides all the
configurationfor a single project. General configuration covers the project's
name, itsowner and its dependencies on other projects. One can also configure
individual phases of the buildprocess, which are implemented as plugins. For
example, one can configure the compiler-plugin to useJava version 1.5 for
compilation, or specify packaging the project even if someunit tests fail.
Larger projects should be divided into several modules, orsub-projects, each
with its own POM. One can then write a root POM through whichone can compile all
the modules with a single command. POMs can also inheritconfiguration from other
POMs. All POMs inherit from the Super POM by default.The Super POM provides
default configuration, such as default sourcedirectories, default plugins, and
so on.
Maven Archetype
+
Archetype is a Maven project templating toolkit.
Anarchetype is defined as an original pattern or model from which all other
thingsof the same kind are made.
Maven Artifact
+
In Maven artifact is simply a file or JAR that is
deployedto a Maven repository. An artifact has -Group ID -Artifact ID -Version
string. The three together uniquely identify theartifact. All the project
dependencies are specified as artifacts.
Goal In Maven
+
In Maven a goal represents a specific task which
contributesto the building and managing 23/71 of a project. It may be bound to 1
or many build phases. A goal not boundto any build phase could be executed
outside of the build lifecycle by itsdirect invocation.
Build Profile
+
In Maven a build profile is a set of configurations. This
set is used to define or override default behaviour of Maven build. Build
profile helps the developers to customize the buildprocess for different
environments. For example you can set profiles for Test,UAT, Pre-prod and Prod
environments each with its own configurations etc.
Build Phases In Maven
+
There are 6 build phases. -Validate -Compile -Test
-Package-Install -Deploy
Target, Source & Test Folders InMavn
+
Target:folder holdsthe compiled unit of code as part of the
build process. Source:folder usually holds javasource codes.Test: directory
contains all the unit testing codes.
Difference Between Compile &Install
+
Compile:is used tocompile the source code of the project
Install: installs the package into the local repository,for use as a dependency
in other projects locally.Design patterns can also beused with Groovy. Here are
important points
Activate Maven Build Profile
+
A Maven Build Profile can be activated in followingways
Using command line consoleinput. By using Mavensettings. Based on environment
variables(User/System variables). Linux DevOps Interview Questions 24/71 image
Linux
+
Linux is the best-known and most-used open sourceoperating
system. As an operating system, Linux is a software that sitsunderneath all of
the other software on a computer, receiving requests from those programs and
relaying theserequests to the computer’s hardware. In many ways, Linux is
similar to other operating systemssuch as Windows, OS X, or iOS But Linux also
is different from other operating systems inmany important ways. First, and
perhaps most importantly, Linux is open sourcesoftware. The code used to create
Linux is free and available to the public toview, edit, and—for users with the
appropriate skills—to contributeto. Linux operating system is consis t of 3
components which areas below: Kernel:Linux is a monolithic kernel that is free
andopen source software that is responsible for managinghardware resources for
the users. System Library:System Library plays a vital role becauseapplication
programs access Kernels feature using systemlibrary. System Utility:System
Utility performs specific and individuallevel tasks. 25/71
Difference Between Linux &Unix
+
Unix and Linux are similar in many ways, and in fact,
Linuxwas originally created to be similar to Unix. Both have similar tools for
interfacing with the systems,programming tools, filesystem layouts, and other
key components. However, Unix is not free. Over the years, a number ofdifferent
operating systems have been created that attempted to be“unix-like” or
“unix-compatible,” but Linux has been themost successful, far surpassing its
predecessors in popularity.
BASH
+
BASH stands forBourne AgainShell. BASH is the UNIX shell
for the GNUoperating system. So, BASH is the command language interpreter that
helps you toenter your input, and thus you can retrieve information. In a
straightforward language, BASH is a program that willunderstand the data entered
by the user and execute the command and givesoutput.
CronTab
+
The crontab (short for "cron table") is a lis t ofcommands
that are scheduled to run at regular time intervals on computer
system.Thecrontabcommandopens the crontab for editing, and lets you add, remove,
or modify scheduledtasks. The daemon which reads the crontab and executes the
commandsat the right time is called cron. It's named after Kronos, the Greekgod
of time. Command syntax crontab [-u user ] file crontab [-u user ] [-l | -r |
-e] [-i] [-s]
Daemon In Linux
+
Adaemonis a type of program on Linux operating systems that
runs unobtrusivelyin the background, rather than under the direct controlof a
user, waiting to beactivated by the occurrence of a specific event or condition
26/71 Unix-like systems typically run numerous daemons, mainly toaccommodate
requests for services from other computers on a network, but also torespond to
other programs and to hardware activity. Examples of actions or conditions that
can trigger daemonsinto activity are a specific time or date, passage of a
specified time interval,a file landing in a particular directory, receipt of an
e-mail or a Web requestmade through a particular communication line. It is not
necessary that the perpetrator of the action orcondition be aware that a daemon
is lis tening , although programs frequentlywill perform an action only because
they are aware that they will implicitlyarouse a daemon.
Process In Linux
+
Daemons are usually instantiated as processes . A process
is an executing (i.e., running)instance of a program. Processes are managed by
the kernel (i.e., the core of theoperating system), which assigns each a unique
process identification number (PID). There are three basic types of processes
inLinux: -Interactive:Interactive processes are run interactively by a user at
the command line -Batch:Batchprocesses are submitted from a queue of processes
and are not associated withthe command line; they are well suited for performing
recurring tasks whensystem usage is otherwis e low. -Daemon:Daemons
arerecognized by the system as any processes whose parent process has a PID
ofone
CLI In Linux
+
CLI (Command Line Interface) is a type of human-computer
interface that reliessolely on textual input and output. That is , the entire
dis play screen, or the currently activeportion of it, shows only characters
(and no images), and input is usuallyperformed entirely with a keyboard.
Questions: What is Linux Kernel
+
A kernel is the lowest level of easily replaceable
softwarethat interfaces with the hardware in your computer. It is responsible
for interfacing all of your applicationsthat are running in “user mode” down
27/71 to the physical hardware, and allowing processes, known asservers, to get
information from each other using inter-process communication(IPC). There are
three types of Kernals Microkernel:Amicrokernel takes the approach of only
managing what it has to: CPU, memory, andIPC. Pretty much everything else in a
computer can be seen as an accessory andcan be handled in user mode. Monolithic
Kernel:Monolithic kernels are the opposite of microkernels because theyencompass
not only the CPU, memory, and IPC, but they also include things likedevice
drivers, file system management, and system server calls Hybrid
Kernel:Hybridkernels have the ability to pick and choose what they want to run
in user modeand what they want to run in supervis or mode. Because the Linux
kernel is monolithic, it has the largest footprint and the most complexity over
the othertypes of kernels. This was a design feature which was under quite a bit
ofdebate in the early days of Linux and still carries some of the same
designflaws that monolithic kernels are inherent to have.
Partial Backup In Linux
+
Partial backup refers to selecting only a portion of
filehierarchy or a single partition to back up.
Root Account
+
The root account a system adminis trator account. It
providesyou full access and controlof the system. Admin can create and maintain
user accounts, assigndifferent permis sion for each account etc
Difference Between Cron andAnacron
+
One of the main difference between cron and anacron jobs is
that cron works on the system that are running continuously. While anacron is
used for the systems that are not runningcontinuously. Other difference between
the two is cron jobs can run everyminute, but anacron jobs can be run only once
a day. Any normal user can do the scheduling of cron jobs, but thescheduling of
anacron jobs can be done by the superuser only. 28/71 Cron should be used when
you need to execute the job at aspecific time as per the given time in cron, but
anacron should be used inwhen there is no any restriction for the timing and can
be executed at anytime. If we think about which one is ideal for servers or
desktops,then cron should be used for servers while anacron should be used
fordesktops or laptops.
Linux Loader
+
Linux Loader is a boot loader for Linux operating system.
Itloads Linux into into the main memory so that it can begin itsoperations.
Swap Space
+
Swap space is the amount of physical memory that is
allocated for use by Linux to hold some concurrent running programstemporarily.
This condition usually occurs when Ram does not have enoughmemory to support all
concurrent running programs. This memory management involves the swapping of
memory toand from physical storage.
Linux Dis tributors
+
There are around six hundred Linux dis tributors. Let us
seesome of the important ones UBuntu: It is a well known Linux Dis tributionwith
a lot of pre-installed apps and easy to userepositories libraries. It is very
easy to use and works like MAC operatingsystem. Linux Mint: It uses cinnamon and
mate desktop. Itworks on windows and should be used by newcomers. Debian: It is
the most stable, quicker anduser-friendly Linux Dis tributors. Fedora: It is
less stable but provides thelatest version of the software. It has GNOME3
desktopenvironment by default. Red HatEnterpris e: It is to be usedcommercially
and to be well tested before release. Itusually provides the stable platform for
a long time. Arch Linux: Every package is to be installed by youand is not
suitable for the beginners.
Developers Use MD5
+
MD5 is an encryption method so it is used to encrypt
thepasswords before saving.
File Permis sions In Linux
+
29/71 image There are 3 types of permis sions in Linux
Read:User can read the file and lis t thedirectory. Write:User can write new
files in the directory. Execute:User can access and run the file in adirectory.
Memory Management In Linux
+
It is always required to keep a check on the memory usage
inorder to find out whether the user is able to access the server or the
resourcesare adequate. There are roughly 5 methods that determine the total
memory usedby the Linux. This is explained as below Freecommand : This is the
most simple and easy to use thecommand to check memory usage. For example: ‘$
free –m’,the option ‘m’ dis plays all the data in MBs. /proc/meminfo:The next
way to determine the memory usage is toread /proc/meminfo file. For example: ‘$
cat/proc/meminfo’ Vmstat : This command basically lays out the memory
usagestatis tics. For example: ‘$ vmstat –s’ Topcommand : This command
determines the total memory usage aswell as also monitors the RAM usage. Htop :
This command also dis plays the memory usage alongwith other details.
Granting Permis sions In Linux
+
System adminis trator or the owner of the file can
grantpermis sions using the ‘chmod’ command. Following symbols are usedwhile
writing permis sions chmod +x
Directory Commands In Linux
+
Here are few important directory commands in Linux pwd: It
is a built-in command which standsfor‘print workingdirectory’. It dis plays the
current working location, working path starting with / anddirectory of the user.
Basically, it dis plays the full path to the directory youare currently in. is :
This command lis t out all thefiles in the directed folder. cd: This stands for
‘changedirectory’. This command is used to change to the 30/71 directory you
want to work from the present directory. Wejust need to type cd followed by the
directory name to access that particulardirectory. mkdir: This command is used
to create anentirely new directory. rmdir: This command is used to remove
adirectory from the system.
Shell Script In Linux
+
In the simplest terms, a shell script is a file containing
aseries of commands. The shell reads this file and carries out the commands
asthough they have been entered directly on the command line. The shell is
somewhat unique, in that it is both a powerfulcommand line interface to the
system and a scripting languageinterpreter. As we will see, most of the things
that can be done on thecommand line can be done in scripts, and most of the
things that can be done inscripts can be done on the command line. We have
covered many shell features, but we have focused onthose features most often
used directly on the command line. The shell also provides a set of features
usually (but notalways) used when writing programs.
Tools Are Used For Reporting Statis tics InLinux
+
Some of the popular and frequently used system
resourcegenerating tools available on the Linux platform are vmstat netstat
iostat ifstat mpstat. These are used for reporting statis tics from
differentsystem components such as virtual memory, network connections and
interfaces,CPU, input/output devices and more.
Dstat In Linux
+
dstatis a powerful,flexible and versatile toolfor
generating Linux system resource statis tics,that is a replacement for all the
tools mentioned in above question. 31/71 It comes with extra features, counters
and it is highlyextensible, users with Python knowledge can build their own
plugins. Features of dstat: Joins information from vmstat, netstat, iostat,
ifstat and mpstattools Dis plays statis tics simultaneously Orders counters and
highly-extensible Supports summarizing of grouped block/network devices Dis
plays interrupts per device Works on accurate timeframes, no timeshifts when a
system is stressed Supports colored output, it indicates different units
indifferent colors Shows exact units and limits conversion mis takes as much
aspossible Supports exporting of CSV output to Gnumeric and Exceldocuments
Types Of Processes In Linux
+
There are fundamentally two types of processes inLinux:
Foreground processes(also referred to as interactive processes)– these are
initialized and controlled through aterminal session. In other words, there has
to be a user connected to the systemto start such processes; they haven’t
started automatically as part of thesystem functions/services. Background
processes(also referred to as non-interactive/automaticprocesses) – are
processes not connected to aterminal; they don’t expect any user input.
Creatin Of Processes In Linux
+
A new process is normally created when an exis ting
processmakes an exact copy of itself in memory. The child process will have the
same environment as itsparent, but only the process ID number is different.
There are two conventional ways used for creating a newprocess in Linux: Using
The System()Function – this method is relativelysimple, however, it’s
inefficient and hassignificantly certain security ris ks. Using fork() andexec()
Function – this technique is alittle advanced but offers greater flexibility,
speed,together with security.
Creation Of Processes In Linux
+
32/71 Because Linux is a multi-user system, meaning
differentusers can be running various programs on the system, each running
instance of aprogram must be identified uniquely by the kernel. And a program is
identified by its process ID(PID) as well asit’s parent processes ID (PPID),
therefore processes canfurther be categorized into: Parent processes– these are
processes that create otherprocesses during run- time. Child processes– these
processes are created by otherprocesses during run-time.
Init Process Linux
+
lnitprocess is the mother (parent) of all processes on the
system,it’s the first program that is executed when the Linux system bootsup; it
manages all other processes on the system. It is started by thekernel itself, so
in principle it does not have a parent process. The init process always has
process ID of1. It functions as anadoptive parent for all orphaned processes.
You can use thepidof commandto find the ID of a process: # pidof systemd # pidof
top # pidof httpd Find Linux Process ID To find the process ID and parent
process ID of the currentshell, run: $ echo $$ $ echo $PPID
Different States Of A Processes InLinux
+
During execution, a process changes from one state
toanother depending on its environment/circumstances. In Linux, a process has
thefollowing possible states: Running– here it’s either running (it is
thecurrent process in the system) or it’s ready to run(it’s waiting to be
assigned to one of the CPUs). Waiting– in this state, a process is waiting foran
event to occur or for a system resource. Additionally,the kernel also
differentiates between two types of waiting processes;interruptible waiting
processes – can be interrupted by signals anduninterruptible waiting processes –
are waiting directly on hardwareconditions and cannot be interrupted by any
event/signal. Stopped– in this state, a process has beenstopped, usually by
receiving a signal. For instance, a process that is being debugged. 33/71
Zombie– here, a process is dead, it has beenhalted but it’s still has an entry
in the processtable.
View Active Processes In Linux
+
There are several Linux tools for viewing/lis ting
runningprocesses on the system, the two traditional and well known are ps andtop
commands: ps Command It dis plays information about a selection of the
activeprocesses on the system as shown below: #ps #ps -e ] head top – System
Monitoring Tool top is a powerful toolthat offers you a dynamic real-timeview of
a running system as shown in the screenshot below: #top glances – System
Monitoring Tool glancesis arelatively new system monitoring toolwith advanced
features: #glances
ControlProcess
+
Linux also has some commands for controlling processes
suchas kill, pkill, pgrep and killall, below are a few basic examples of
usethem: $ pgrep -u tecmint top $ kill 2308 $ pgrep -u tecmint top $ pgrep -u
tecmint glances $ pkill glances $ pgrep -u tecmint glances
Can We Send signals To Processes In Linux
+
The fundamental way of controlling processes in Linux is
bysending signals to them. There are multiple signals that you can send to
aprocess, to view all the signals run: 34/71 $ kill -l Lis t All Linux Signals
To send a signal to a process, use the kill, pkill or pgrepcommands we mentioned
earlier on. But programs can only respond to signals ifthey are programmed to
recognize those signals. And most signals are for internal use by the system, or
forprogrammers when they write code. The following are signals which are useful
toa system user: SIGHUP 1– sent to a process when its controllingterminal is
closed. SIGINT 2– sent to a process by its controllingterminal when a user
interrupts the process by pressing [Ctrl+C] . SIGQUIT 3– sent to a process if
the user sends aquit signal SIGKILL 9– this signal immediately terminates(kills)
a process and the process will not perform anyclean-up operations. SIGTERM 15–
this a program termination signal (killwill send this by default). SIGTSTP 20–
sent to a process by its controllingterminal to request it to stop (terminal
stop); initiated by the userpressing
Change Priority Of A Processes InLinux
+
On the Linux system, all active processes have a
priorityand certain nice value. Processes with higher priority will normally get
moreCPU time than lower priority processes. However, a system user with root
privileges can influencethis with thenice andrenicecommands. From the output of
the top command, the NI shows the processnice value: $ top Lis t Linux Running
Processes Use thenicecommand to set a nice value for a process. Keepin mind that
normal users can attribute a nice value from zero to 20 toprocesses they own.
Only the root user can use negative nice values. Torenicethe priority of a
process, use therenice command asfollows: $ renice +8 2687 $ renice +8 2103 GIT
DevOps Interview Questions
Git
+
35/71 Git is a version controlsystem for tracking changes
incomputer files and coordinating work on those files among multiplepeople. It
is primarily used for source code management in softwaredevelopment but it can
be used to keep track of changes in any set offiles. As a dis tributed revis ion
controlsystem it is aimed atspeed, data integrity, and support for dis tributed,
non-linear workflows. By far, the most widely used modern version
controlsystemin the world today is Git. Git is a mature, actively maintained
open sourceproject originally developed in 2005 by Linus Torvald. Git is an
example of aDis tributed Version ControlSystem, In Git, every developer's
working copyof the code is also a repository that can contain the full his tory
of allchanges.
Benefits Of GIT
+
Here are some of the advantages of using Git Ease of use
Data redundancy andreplication High availability Superior dis k utilization
andnetwork performance Only one .git directory perrepository Collaboration
friendly Any kind of projects fromlarge to small scale can use GIT
Repository In GIT
+
The purpose of Git is to manage a project, or a set
offiles, as they change over time. Git stores this information in a data
structurecalled a repository. A gitrepository contains, among other things,
thefollowing: A set ofcommit objects. A set of references to commitobjects,
called heads. The Git repository is stored in the same directory as theproject
itself, in a subdirectory called .git . Note differences from central-repository
systems like CVS orSubversion: There is only one .git directory, in the root
directory of theproject. The repository is stored infiles alongside the project.
There is no central server repository.
Staging Area In GIT
+
36/71 Staging is a step before the commit process in git.
That is ,a commit in git is performed in two steps: -Staging and -Actual commit
As long as a change set is in the staging area, git allowsyou to edit it as you
like (replace staged files with other versions of staged files,remove changes
from staging, etc.)
GIT STASH
+
Often, when you’ve been working on part of yourproject,
things are in a messy state and you want to switch branches for a bitto work on
something else. The problem is , you don’t want to do a commit ofhalf-done work
just so you can get back to this point later. The answer to this is sue is the
git stash command.Stashing takes the dirty state of your working directory —
that is , yourmodified tracked files and staged changes — and saves it on a
stack ofunfinis hed changes that you can reapply at any time.
Revert Commit In GIT
+
Given one or more exis ting commits, revert the changes
thatthe related patches introduce, and record some new commits that record
them.This requires your working tree to be clean (no modifications from the
HEADcommit). git-revert - Revert some exis ting commits SYNOPSis git revert
[--[no-]edit] [-n] [-m parent-number] [-s][-S[ ]] … git revert --continue git
revert --quit git revert --abort
Delete Remote Repository In GIT
+
Use the git remote rm command to remove a remote URL from
your repository. The git remote rm command takes one argument: A remote name,
for example,
Questions: What is GIT Stash Drop
+
37/71 In case we do not need a specific stash, we use git
stashdrop command to remove it from the lis t of stashes. By default, this
command removes to latest addedstash To remove a specific stash we specify as
argument in the gitstash drop command.
Difference Between GIT andSubversion
+
Here is a summary of Differences between GIT andSubversion
Git is a dis tributed VCS; SVNis a non-dis tributed VCS. Git has a centralized
serverand repository; SVN does not have a centralized server orrepository. The
content in Git is storedas metadata; SVN stores files of content. Git branches
are easier towork with than SVN branches. Git does not have the globalrevis ion
number feature like SVN has. Git has better contentprotection than SVN. Git was
developed for Linuxkernel by Linus Torvalds; SVN was developed by CollabNet,Inc.
Git is dis tributed under GNU,and its maintenance overseen by Junio Hamano;
Apache Subversion, or SVN, is dis tributed under theopen source license.
Difference Between GIT Fetch & GITPull
+
GIT fetch – It downloads only the new data from theremote
repository and does not integrate any of the downloaded data into yourworking
files. Providing a view of the data is all it does. GIT pull – It downloads as
well as merges the datafrom the remote repository into the local working files.
This may also lead to merging conflicts if the user’slocal changes are not yet
committed. Using the “GIT stash” commandhides the local changes.
Git forkHow to create tag
+
A fork is a copy of a repository. Forking a
repositoryallows you to freely experiment with changes without affecting the
originalproject. A fork is really a Github (not Git) construct to store aclone
of the repo in your user account. As a clone, it will contain all thebranches in
the main repo at the time you made the fork. 38/71 Create Tag: Click the
releases link on ourrepository page. Click on Create a new releaseor Draft a new
release. Fill out the form fields, thenclick Publis h release at the bottom.
After you create your tag onGitHub, you might want to fetch it into your local
repository too: git fetch.
Difference between fork andbranch
+
A fork is a copy of a repository. Forking a
repositoryallows you to freely experiment with changes without affecting the
originalproject. A fork is really a Github (not Git) construct to store aclone
of the repo in your user account. As a clone, it will contain all thebranches in
the main repo at the time you made the fork.
Cherry Picking In GIT
+
Cherry picking in git means to choose a commit from
onebranch and apply it onto another. This is in contrast with other ways such as
merge and rebasewhich normally applies many commits onto a another branch. Make
sure you are on the branch you want apply the committo. git checkout master
Execute the following: git cherry-pick
Language GIT is Written In
+
Much of Git is written in C, along with some BASH
scriptsfor UI wrappers and other bits.
Rebase Master In GIT
+
Rebasing is the process of moving a branch to a new
basecommit.The golden rule of git rebase is to never use it on publicbranches.
The only way to synchronize the two master branches is tomerge them back
together, resulting in an extra merge commit and two sets ofcommits that contain
the same changes.
‘head’in git and how many heads can be created in a
repository
+
image 39/71 There can be any number of heads in a GIT
repository. Bydefault there is one head known as HEAD in each repository in GIT.
HEADis a ref(reference) to the currently checked out commit. In normal states,
it'sactually a symbolic ref to the branch user has checked out. if you look at
the contents of .git/HEAD you'll see something like"ref: refs/heads/master". The
branch itself is a reference to the commit at thetip of the branch
Name some GIT commands and also explain theirfunctions
+
Here are some most important GIT commands GIT diff– It
shows the changes between commits,commits and working tree. GIT status– It shows
the difference between workingdirectories and index. GIT stash applies– It is
used to bring back the savedchanges on the working directory. GIT rm– It removes
the files from the stagingarea and also of the dis k. GIT log– It is used to
find the specific commit inthe his tory. GIT add– It adds file changes in the
exis tingdirectory to the index. GIT reset– It is used to reset the index and as
wellas the working directory to the state of the lastcommit. GIT checkout– It is
used to update the directories ofthe working tree with those from another branch
withoutmerging. GIT is tree– It represents a tree object including themode and
the name of each item. GITinstaweb – It automatically directs a webbrowser and
runs the web server with an interface intoyour local repository.
“conflict” in GIT and how is it resolved
+
When a commit that has to be merged has some changes in
oneplace, which also has the changes of current commit, then the conflictaris
es. The GIT will not be able to predict which change will takethe precedence. In
order to resolve the conflict in GIT: we have to edit thefiles to fix the
conflicting changes and then add the resolved files by runningthe “GIT add”
command; later on, to commit the 40/71 repaired merge run the “GIT commit”
command.GIT identifies the position and sets the parents of the commit
correctly.
Migrate From Subversion To GIT
+
SubGITis a toolforsmooth and stress-free subversion to GIT
migration and also a solution for acompany-wide subversion to GIT migration that
is : It allows to make use of allGIT and subversion features. It provides
genuinestress-free migration experience. It doesn’t require anychange in the
infrastructure that is already placed. It is considered to be muchbetter than
GIT-SVN
Index In GIT
+
The index is a single, large, binary file in under
.gitfolder, which lis ts all files in the current branch, their sha1 checksums,
timestamps and the file name. Before completing the commits, it is formatted
andreviewed in an intermediate area known as Index also known as the
stagingarea.
Bare Git repository
+
A bare Git repository is a repository that is
createdwithout a Working Tree. git init --bare
Revert a commit that has already beenpushed and made
public
+
One or more commits can be reverted through the use of git
revert . This command, inessence, creates a new commit with patches that cancel
out the changesintroduced in specific commits. In case the commit that needs to
be reverted has alreadybeen publis hed or changing the repository his tory is
not an option, git revert can be used torevert commits. Running the following
command will revert the last twocommits: git revert HEAD~2..HEAD 41/71
Alternatively, one can always checkout the state of aparticular commit from the
past, and commit it anew.
Squash last N commits into a singlecommit
+
Squashing multiple commits into a single commit
willoverwrite his tory, and should be done with caution. However, this is useful
whenworking in feature branches. To squash the last N commits of the current
branch, run thefollowing command (with {N} replaced with the number of commits
that you want tosquash): git rebase -i HEAD~{N} Upon running this command, an
editor will open with a lis tof these N commit messages, one per line. Each of
these lines will begin with the word“pick”. Replacing “pick” with “squash” or“s”
will tell Git to combine the commit with the commit beforeit. To combine all N
commits into one, set every commit in thelis t to be squash except the first
one. Upon exiting the editor, and if no conflict aris es, git rebase will allow
you tocreate a new commit message for the new combined commit.
Conflict in git and how can it beresolved
+
A conflict aris es when more than one commit that has to
bemerged has some change in the same place or same line of code. Git will not be
able to predict which change should takeprecedence. This is a git conflict. To
resolve the conflict in git, edit the files to fix theconflicting changes and
then add the resolved files by running After that, to commit the repaired merge,
run remembers thatyou are in the middle of a merge, so it sets the parents of
the commitcorrectly.
Setup A Script To Run Every Time aRepository Receives New
Commits Through Push
+
42/71 To configure a script to run every time a
repositoryreceives new commits through push, one needs to define either a
pre-receive,update, or a post-receive hook depending on when exactly the script
needs to betriggered. Pre-receive hook in the destination repository is
invokedwhen commits are pushed to it. Any script bound to this hook will be
executedbefore any references are updated. This is a useful hook to run scripts
that help enforcedevelopment policies. Update hook works in a similar manner to
pre-receive hook,and is also triggered before any updates are actually made.
However, the update hook is called once for every committhat has been pushed to
the destination repository. Finally, post-receive hook in the repository is
invokedafter the updates have been accepted into the destination repository.
This is an ideal place to configure simple deploymentscripts, invoke some
continuous integration systems, dis patch notificationemails to repository
maintainers, etc. Hooks are local to every Git repository and are notversioned.
Scripts can either be created within the hooks directory inside the“.git”
directory, or they can be created elsewhere and links tothose scripts can be
placed within the directory.
Commit Hash
+
In Git each commit is given a unique hash. These hashes
canbe used to identify the corresponding commits in various scenarios (such
aswhile trying to checkout a particular state of the code using the git checkout
{hash} command). Additionally, Git also maintains a number of aliases tocertain
commits, known as refs. Also, every tag that you create in the
repositoryeffectively becomes a ref (and that is exactly why you can use tags
instead ofcommit hashes in various git commands). Git also maintains a number of
special aliases that changebased on the state of the repository, such as HEAD,
FETCH_HEAD, MERGE_HEAD,etc. Git also allows commits to be referred as relative
to oneanother. For example, HEAD~1 refers to the commit parent to HEAD, HEAD~2
refersto the grandparent of HEAD, and so on. In case of merge commits, where the
commit has two parents,^ can be used to select one of the two parents, e.g.
HEAD^2 can be used tofollow the second parent. And finally, refspecs. These are
used to map local andremote branches together. However, these can be used to
refer to commits that resideon remote branches allowing one to controland
manipulate them from a local Gitenvironment. 43/71 image
Conflict In GIT
+
A conflict aris es when more than one commit that has to
bemerged has some change in the same place or same line of code. Git will not be
able to predict which change should takeprecedence. This is a git conflict.To
resolve the conflict in git, edit thefiles to fix the conflicting changes and
then add the resolved files by running git add . After that, to commit
therepaired merge, run git commit . Gitremembers that you are in the middle of a
merge, so it sets the parents of thecommit correctly.
Githooks
+
Git hooks are scripts that can run automatically on
theoccurrence of an event in a Git repository. These are used for automation
ofworkflow in GIT. Git hooks also help in customizing the internal behavior
ofGIT. These are generally used for enforcing a GIT commit policy.
Dis advantages Of GIT
+
GIT has very few dis advantages. These are the scenarios
whenGIT is difficult to use. Some of these are: Binary Files:If wehave a lot
binary files (non-text) in our project, then GIT becomes very slow.E.g. Projects
with a lot of images or Word documents. Steep Learning Curve:It takes some time
for a newcomer to learn GIT. Some of the GITcommands are non-intuitive to a
fresher. Slow remote speed:Sometimes the use of remote repositories in slow due
to networklatency. Still GIT is better than other VCS in speed. image
Stored inside a commit object inGIT
+
GIT commit object contains following information: SHA1
name:A 40character string to identify a commit Files:Lis t of filesthat
represent the state of a project at a specific point of time
Reference:Anyreference to parent commit objects 44/71
GIT reset command
+
Git reset command is used to reset current HEAD to
aspecific state. By default it reverses the action of git add command. So we
usegit reset command to undo the changes of git add command. Reference:
Anyreference to parent commit objects
GIT protects the code in arepository
+
GIT is made very secure since it contains the source code
ofan organization. All the objects in a GIT repository are encrypted with
ahashing algorithm called SHA1. This algorithm is quite strong and fast. It
protects sourcecode and other contents of repository against the possible
maliciousattacks. This algorithm also maintains the integrity of GITrepository
by protecting the change his tory against accidental changes. Continuos
Integration Interview Questions
Continuos Integration
+
Continuous Integration is the process of
continuouslyintegrating the code and often multiple times per day. The purpose
is to findproblems quickly, s and deliver the fixes more rapidly. CI is a best
practice for software development. It is doneto ensure that after every code
change there is no is sue in software.
Build Automation
+
image Build automation is the process of automating the
creationof a software build and the associated processes. Including compiling
computer source code into binary code,packaging binary code, and running
automated tests.
Automated Deployment
+
Automated Deployment is the process of consis tently
pushinga product to various environments on a “trigger.” 45/71 It enables you to
quickly learn what to expect every timeyou deploy an environment with much
faster results. This combined with Build Automation can save developmentteams a
significant amount of hours. Automated Deployment saves clients from being
extensivelyoffline during development and allows developers to build
while“touching” fewer of a clients’ systems. With an automated system, human
error is prevented. In theevent of human error, developers are able to catch it
before live deployment– saving time and headache. You can even automate the
contingency plan and make the siterollback to a working or previous state as if
nothing ever happened. Clearly, this automated feature is super valuable
inallowing applications and sites to continue during fixes. Additionally,
contingency plans can be version-controlled,improved and even self-tested.
Continuous Integration Implemented
+
Different tools for supporting Continuous Integration
areHudson, Jenkins and Bamboo. Jenkins is the most popular one currently.
Theyprovide integration with various version controlsystems and build tools.
Continuous Integration process doeswork
+
Whenever developer commits changes in version
controlsystem, then Continuous Integration server detects that changes are
committed.And goes through following process Continuous Integration
serverretrieves latest copy of changes. It build code with new changesin build
tools. If build fails notify todeveloper. After build pass run automatedtest
cases if test cases fail notify to developer. Create package for
deploymentenvironment.
Software Required For ContinuousIntegration process
+
image Here are the minimum tools you need to achieve CI
Source code repository : Tocommit code and changes for example git. Server: It
is ContinuousIntegration software for example Jenkin, Teamcity. 46/71 Build
tool: It buildsapplication on particular way for example maven, gradle.
Deployment environment : Onwhich application will be deployed.
JenkinsSoftware
+
Jenkins is self-contained, open source automation
serverused to automate all sorts of tasks related to building, testing, and
deliveringor deploying software. Jenkins is one of the leading open source
automation serversavailable. Jenkins has an extensible, plugin-based
architecture, enablingdevelopers to create 1,400+ plugins to adapt it to a
multitude of build, testand deployment technology integrations.
Questions: What is a Jenkins Pipeline
+
Jenkins Pipeline (or simply “Pipeline”) is asuite of
plugins which supports implementing and integrating continuous deliverypipelines
into Jenkins..
Differencebetween Maven, Ant,Gradle and Jenkins
+
Maven and Ant are Build Technologies whereas Jenkins is
acontinuous integration tool.
We useJenkins
+
Jenkins is anopen-sourcecontinuous integration software
toolwritten inthe Java programming language for testing and reporting on is
olated changes in alarger code base in real time. TheJenkins softwareenables
developers to find and solve defects in acode base rapidly and to automate
testing of their builds.
CITools
+
Here is the lis t of the top 8Continuous Integration tools:
Jenkins TeamCity Travis CI Go CD Bamboo GitLab CI 47/71 CircleCI Codeship
SCM toolsJenkins supports
+
Jenkins supports version controltools, including
AccuRev,CVS, Subversion, Git, Mercurial, Perforce, ClearCase and RTC, and can
executeApache Ant, Apache Maven and arbitrary shell scripts and Windows
batchcommands.
We usePipelines in Jenkins
+
Pipeline adds a powerful set of automation tools
ontoJenkins, supporting use cases that span from simple continuous integration
tocomprehensive continuous delivery pipelines. By modeling a series of related
tasks, users can takeadvantage of the many features of Pipeline: Code: Pipelines
areimplemented in code and typically checked into source control, giving teams
theability to edit, review, and iterate upon their delivery pipeline. Durable:
Pipelines can surviveboth planned and unplanned restarts of the Jenkins master.
Pausable: Pipelines canoptionally stop and wait for human input or approval
before continuing the Pipeline run. Versatile: Pipelines supportcomplex
real-world continuous delivery requirements,including the ability to fork/join,
loop, and perform work in parallel. Extensible: The Pipelineplugin supports
custom extensions to its DSL and multiple options forintegration with other
plugins.
CreateMultibranch Pipeline in Jenkins
+
The Multi branch Pipeline project type enables you
toimplement different Jenkins files for different branches of the sameproject.
In a Multi branch Pipeline project, Jenkins automaticallydis covers, manages and
executes Pipelines for branches which contain a Jenkinsfile in source control.
Jobs inJenkins
+
Jenkinscan be usedto perform the typical build server work,
such as doingcontinuous/official/nightly builds, run tests, or perform some
repetitive batchtasks. This is called “free-style softwareproject” in Jenkins.
48/71
Configuringautomatic builds in Jenkins
+
Builds in Jenkinscanbe triggered periodically (on a
schedule, specified in configuration), or whensource changes in the project have
been detected, or they can be automaticallytriggered by requesting the URL:
Jenkinsfile
+
Jenkins file is a text file containing the definition of
aJenkins Pipeline and checks into source control. Amazon AWS DevOps Interview
Questions
Amazon WebServices
+
Amazon Web Services provides services that help you
practiceDevOps at your company and that are built first for use with AWS. These
tools automate manual tasks, help teams manage complexenvironments at scale, and
keep engineers in controlof the high velocity thatis enabled by DevOps
Benefits Of AWS for DevOps
+
There are many benefits of using AWS for devops Get Started
Fast:Each AWS service is ready to use if you have an AWS account. There is no
setup required or software to install. Fully Managed Services:These services can
help you take advantage of AWS resources quicker.You can worry less about
setting up, installing, and operating infrastructure onyour own. This lets you
focus on your core product. Built For Scalability:You can manage a single
instance or scale to thousands using AWSservices. These services help you make
the most of flexible compute resources bysimplifying provis ioning,
configuration, and scaling. Programmable:Youhave the option to use each service
via the AWS Command Line Interface orthrough APis and SDKs. You can also model
and provis ion AWS resources and yourentire AWS infrastructure using declarative
AWS CloudFormation templates. Automation:AWS helpsyou use automation so you can
build faster and more efficiently. Using AWSservices, you can automate manual
tasks or processes such as deployments, 49/71 development & test workflows,
container management, andconfiguration management. Secure:Use AWSIdentity and
Access Management (IAM) to set user permis sions and policies. This gives you
granular controlover who can access your resources and how theyaccess those
resources.
Handle ContinuousIntegration and Continuous Delivery in
AWS Devops
+
The AWS Developer Tools help in securely store and
versionyour application’s source code and automatically build, test, and
deployyour application to AWS.
Importance Of Buffer In Amazon WebServices
+
image An Elastic Load Balancer ensures that the incoming
trafficis dis tributed optimally across various AWS instances. A buffer will
synchronize different components and makes thearrangement additional elastic to
a burst of load or traffic. The components are prone to work in an unstable way
ofreceiving and processing the requests. The buffer creates the equilibrium
linking various apparatusand crafts them effort at the identical rate to supply
more rapidservices.
Components Involved In Amazon WebServices
+
image There are 4 components Amazon S3: withthis , one can
retrieve the key information which are occupied in creating cloudstructural
design and amount of produced information also can be stored in this component
that is the consequence of the key specified. Amazon EC2 instance:helpful to run
a large dis tributed system on the Hadoop cluster. Automaticparallelization and
job scheduling can be achieved by this component. Amazon SQS: this component
acts as a mediator between different controllers. Also worn forcushioning
requirements those are obtained by the manager of Amazon. Amazon SimpleDB:helps
in storing the transitional position log and the errands executed by
theconsumers. 50/71 image
Spot instance different from anOn-Demand instance or
Reserved Instance
+
image Spot Instance, On-Demand instance and Reserved
Instances areall models for pricing. Moving along, spot instances provide the
ability forcustomers to purchase compute capacity with no upfront commitment, at
hourlyrates usually lower than the On-Demand rate in each region. Spot instances
are just like bidding, the bidding price is called Spot Price. The Spot Price
fluctuates based on supply and demand forinstances, but customers will never pay
more than the maximum price they havespecified. If the Spot Price moves higher
than a customer’smaximum price, the customer’s EC2 instance will be shut
downautomatically. But the reverse is not true, if the Spot prices come
downagain, your EC2 instance will not be launched automatically, one has to do
thatmanually. In Spot and On demand instance, there is no commitment forthe
duration from the user side, however in reserved instances one has to stickto
the time period that he has chosen.
Questions: What are the best practicesfor Security in
Amazon EC2
+
There are several best practices to secure Amazon EC2. A
fewof them are given below: Use AWS Identity and AccessManagement (IAM) to
controlaccess to your AWS resources. Restrict access by onlyallowing trusted
hosts or networks to access ports on yourinstance. Review the rules in
yoursecurity groups regularly, and ensure that you apply theprinciple of least
Privilege – only open uppermis sions that you require. Dis able password-based
loginsfor instances launched from your AMI. Passwords can befound or cracked,
and are a security ris k.
AWSCodeBuild in AWSDevops
+
AWS CodeBuild is a fully managed build service that
compilessource code, runs tests, and produces software packages that are ready
todeploy. With CodeBuild, you don’t need to provis ion, manage,and scale your
own build servers. CodeBuild scales continuously and processesmultiple builds
concurrently, so your builds are not left waiting in aqueue. 51/71
AmazonElastic Container Service in AWSDevops
+
Amazon Elastic Container Service (ECS) is a highly
scalable,high performance container management service that supports Docker
containersand allows you to easily run applications on a managed cluster of
Amazon EC2instances.
AWS Lambdain AWS Devops
+
AWS Lambda lets you run code without provis ioning
ormanaging servers. With Lambda, you can run code for virtually any type
ofapplication or backend service, all with zero adminis tration. Just upload
your code and Lambda takes care of everythingrequired to run and scale your code
with high availability. Splunk DevOps Interview Questions
Splunk
+
The platform of Splunk allows you to get vis ibility
intomachine data generated from different networks, servers, devices,
andhardware. It can give insights into the application management, threatvis
ibility, compliance, security, etc. so it is used to analyze machine data.The
data is collected from the forwarder from the source and forwarded to
theindexer. The data is stored locally on a host machine or cloud. Then on the
datastored in the indexer the search head searches, vis ualizes, analyzes
andperforms various other functions.
Components Of Splunk
+
The main components of Splunk are Forwarders, Indexers
andSearch Heads.Deployment Server(or Management Console Host) will come into
thepicture in case of a larger environment. Deployment servers act like an
antivirus policy server forsetting up Exceptions and Groups so that you can map
and create adifferent setof data collection policies each for either window
based server or a Linux basedserver or a Solaris based server.plunk has
fourimportant components : Indexer –It indexes the machine data Forwarder
–Refers to Splunk instances that forward data tothe remote indexers Search Head
–Provides GUI for searching Deployment Server– Manages the Splunk components
likeindexer, forwarder, and 52/71 search head in computing environment.
Alerts inSplunk
+
An alert is an action that a saved search triggers
onregular intervals set over a time range, based on the results of thesearch.
When the alerts are triggered, various actions occurconsequently.. For instance,
sending an email when a search to the predefinedlis t of people is triggered.
Three types of alerts: Pre-result alerts :Mostcommonly used alert type and runs
in real-time for an all- time span. Thesealerts are designed such that whenever
a search returns a result, they aretriggered. Scheduled alerts :Thesecond most
common- scheduled results are set up to evaluate the results ofa his torical
search result running over a set time range on a regularschedule. You can define
a time range, schedule and the trigger condition toan alert. Rolling-window
alerts:These are the hybrid of pre-result and scheduled alerts. Similar tothe
former, these are based on real-time search but do not trigger each timethe
search returns a matching result . It examines all events in real-timemapping
within the rolling window and triggers the time that specificcondition by that
event in the window is met, like the scheduled alert is triggered on a scheduled
search.
Categories Of SPL Commands
+
SPL commands are divided into five categories: Sorting
Results –Ordering results and (optionally) limiting the number ofresults.
Filtering Results –It takes a set of events or results and filters them into a
smallerset of results. Grouping Results –Grouping events so you can see
patterns. Filtering, Modifying and Adding Fields –Taking search results and
generating asummary for reporting. Reporting Results –Filtering out some fields
to focus on the ones you need, ormodifying or adding fields to enrich your
results or events.
Happens If The LicenseMaster is Unreachable
+
In case the license master is unreachable, then it is
justnot possible to search the data. 53/71 However, the data coming in to the
Indexer will not beaffected. The data will continue to flow into your Splunk
deployment. The Indexers will continue to index the data as usualhowever, you
will get a warning message on top your Search head or web UI sayingthat you have
exceeded the indexing volume. And you either need to reduce the amount of data
coming inor you need to buy a higher capacity of license. Basically, the
candidate is expected to answer that the indexing does not stop; only searching
is halted
Common port numbers used bySplunk
+
Common port numbers on which default services runare:
Service PortNumber Splunk Management Port 8089 Splunk Index Replication Port
8080 KV store 8191 Splunk Web Port 8000 Splunk Indexing Port 9997 Splunk network
port 514
Splunk BucketsExplain The BucketLifecycle
+
image A directory that contains indexed data is known as a
Splunkbucket. It also contains events of a certain period. Bucket lifecycle
includesfollowing stages: Hot –It contains newly indexed data and is open
forwriting. For each index, there are one or more hot buckets available Warm
–Data rolled from hot Cold –Data rolled from warm Frozen –Data rolled from cold.
The indexer deletes frozendata by default but users can also archive it. Thawed
–Data restored from an archive. If you archivefrozen data , you can later return
it to the index bythawing (defrosting) it.
Explain Data Modelsand Pivot
+
54/71 Data models are used for creating a structured
hierarchicalmodel of data. It can be used when you have a large amount of
unstructured data,and when you want to make use of that information without
using complex searchqueries. A few use cases of Data models are: Create Sales
Reports:If you have a sales report, then you can easilycreate the total number
of successful purchases, belowthat you can create a child object containing the
lis t of failed purchases andother views Set Access Levels:If you want a
structured view of users and theirvarious access levels, you can use a data
model On the other hand with pivots, you have the flexibility tocreate the front
views of your results and then pick and choose the mostappropriate filter for a
better view of results.
FilePrecedence In Splunk
+
File precedence is an important aspect of troubleshooting
inSplunk for an adminis trator, developer, as well as an architect. All of
Splunk’s configurations are written in .conffiles. There can be multiple copies
present for each of these files, and thus itis important to know the role these
files play when a Splunk instance is runningor restarted. To determine the
priority among copies of a configuration file,Splunk software first determines
the directory scheme. The directory schemes areeither a) Global or b) App/user.
When the context is global (that is , wherethere’s no app/user context),
directory priority descends in this order: System local directory —
highestpriority App local directories App default directories System default
directory — lowestpriority When the context is app/user, directory priority
descendsfrom user to app to system: User directories for current user — highest
priority App directories for currently running app (local, followed bydefault)
App directories for all other apps (local, followed by default)— for exported
settings only System directories (local, followed by default) — lowest priority
D ifference Between SearchTime And Index Time Field
Extractions
+
image Search time field extraction refers to the fields
extractedwhile performing searches. Whereas, fields extracted when the data
comes to the indexerare referred to as Index time field extraction. 55/71 You
can set up the indexer time field extraction either atthe forwarder level or at
the indexer level. Another difference is that Search time fieldextraction’s
extracted fields are not part of the metadata, so they do notconsume dis k
space. Whereas index time field extraction’s extracted fieldsare a part of
metadata and hence consume dis k space.
Source TypeIn Splunk
+
Source type is a default field which is used to identify
thedata structure of an incoming event. Source type determines how
SplunkEnterpris e formats the data during the indexing process. Source type can
be set at the forwarder level for indexerextraction to identify different data
formats.
SOS
+
SOS stands for Splunk on Splunk. It is a Splunk app
thatprovides graphical view of your Splunk environment performance andis sues.
It has following purposes: Diagnostic toolto analyze andtroubleshoot problems
Examine Splunk environmentperformance Solve indexing performanceis sues Observe
scheduler activitiesand is sues See the details of schedulerand user driven
search activity image Search, view andcompare configuration files of Splunk
Splunk Indexer And Explain ItsStages
+
The indexer is a Splunk Enterpris e component that
createsand manages indexes. The main functions of an indexer are: Indexing
incoming data Searching indexed dataSplunk indexer has following stages: Input
:SplunkEnterpris e acquires the raw data from various input sources and breaks
it into64K blocks and assign them some metadata keys. These keys include host,
sourceand source type of the data.Parsing :Also known as event processing,
during this stage, the Enterpris e analyzes and transforms the data, breaks data
intostreams, identifies, parses and sets timestamps, performs metadata
annotationand transformation of data. Indexing :In this phase, the parsed events
are written onthe dis k index including both compressed data and the associated
index files.Searching : The‘Search’ function plays a 56/71 major role during
this phase as it handles all searchingaspects (interactive, scheduled searches,
reports, dashboards, alerts) on theindexed data and stores saved searches,
events, field extractions andviews
State The Difference Between Stats andEventstats Commands
+
Stats –This command produces summary statis tics of all
exis ting fields in your searchresults and store them as values in new
fields.Eventstats – It is same asstats command except that aggregation results
are added in order to every eventand only if the aggregation is applicable to
that event. It computes therequested statis tics similar to stats but aggregates
them to the original rawdata. log4J DevOps Interview Questions
Log4j
+
log4j is a reliable, fast and flexible logging
framework(APis ) written in Java, which is dis tributed under the Apache
SoftwareLicense. log4j has been ported to the C, C++, C#, Perl, Python, Ruby,and
Eiffel languages. log4j is highly configurable through external
configurationfiles at runtime. It views the logging process in terms of levels
of prioritiesand offers mechanis ms to direct logging information to a great
variety ofdestinations. What Are TheFeatures Of Log4j Log4j is widely used
framework and here are features oflog4j It is thread-safe.It is optimized for
speed It is based on a named loggerhierarchy. It supports multiple
outputappenders per logger. It supportsinternationalization. It is not
restricted to apredefined set of facilities. Logging behavior can be set
atruntime using a configuration file. It is designed to handle JavaExceptions
from the start. It uses multiple levels,namely ALL, TRACE, DEBUG, INFO, WARN,
ERROR and FATAL. The format of the log outputcan be easily changed by extending
the Layout class. The target of the log outputas well as the writing strategy
can be altered by implementations of the Appender interface. It is fail-stop.
However,although it certainly strives to ensure delivery, log4j does not 57/71
guarantee that each log statement will be delivered to itsdestination.
Components oflog4j
+
log4j has three main components loggers: Responsible
forcapturing logging information. appenders: Responsible forpublis hing logging
information to various preferred destinations. layouts: Responsible
forformatting logging information in different styles.
Initialize and use Log4J
+
public class LoggerTest { static Logger log
=Logger.getLogger (LoggerTest.class.getName()); public void my logerMethod()
{if(log.is DebugEnabled()) log.debug("This is test message" + var2); ) }}
Pros andCons of Logging
+
Following are the Pros and Cons of Logging Logging is
animportant component of the software development. A well-written logging
codeoffers quick debugging, easy maintenance, and structured storage of
anapplication's runtime information. Logging does have its drawbacks also. Itcan
slow down an application. If too verbose, it can cause scrolling blindness.To
alleviate these concerns, log4j is designed to be reliable, fast andextensible.
Since logging is rarely the main focus of an application, the log4jAPI strives
to be simple to understand and to use.
Purpose OfLogger Object
+
Logger Object − The top-level layer of log4jarchitecture is
the Logger which provides the Logger object. The Logger object is responsible
for capturing logginginformation and they are stored in a namespace hierarchy.
Purpose of Layout object
+
58/71 The layout layer of log4j architecture provides
objectswhich are used to format logging information in different styles. It
providessupport to appender objects before publis hing logging information.
Layout objects play an important role in publis hing logginginformation in a way
that is human-readable and reusable.
Questions: What is the purpose of Appender object
+
The Appender object is responsible for publis hing
logginginformation to various preferred destinations such as a database, file,
console,UNIX Syslog, etc.
Purpose OfObjectRenderer Object
+
The ObjectRenderer object is specialized in providing
aString representation of different objects passed to the loggingframework. This
object is used by Layout objects to prepare the finallogging information.
LogManagerobject
+
The LogManager object manages the logging framework. It is
responsible for reading the initial configuration parameters from a
system-wideconfiguration file or a configuration class.
Define A FileAppender Using Log4j.properties
+
image Following syntax defines a file appender
−log4j.appender.FILE=org.apache.log4j.FileAppenderlog4j.appender.FILE.File=${log}/log.out
Purpose OfThreshold In Appender
+
Appender can have a threshold level associated with
itindependent of the logger level. The Appender ignores any logging messages
thathave a level lower than the threshold level. Docker DevOps Interview
Questions
Docker
+
59/71 image Docker provides a container for managing
software workloadson shared infrastructure, all while keeping them is olated
from oneanother. Docker is a tooldesigned to make it easier to create,deploy,
and run applications by using containers. Containers allow a developer to
package up an applicationwith all of the parts it needs, such as libraries and
other dependencies, andship it all out as one package. By doing so, the
developer can rest assured that theapplication will run on any other Linux
machine regardless of any customizedsettings that machine might have that could
differ from the machine used forwriting and testing the code. In a way, Docker
is a bit like a virtual machine.But unlike a virtual machine, rather than
creating a whole virtual operatingsystem. Docker allows applications to use the
same Linux kernel as the systemthat they're running on and only requires
applications be shipped withthings not already running on the host computer.
This gives a significantperformance boost and reduces the size of the
application.
LinuxContainers
+
Linux containers, in short, contain applications in a
waythat keep them is olated from the host system that they run on. Containers
allow a developer to package up an applicationwith all of the parts it needs,
such as libraries and other dependencies, andship it all out as one package. And
they are designed to make it easier to provide aconsis tent experience as
developers and system adminis trators move code fromdevelopment environments
into production in a fast and replicable way.
Docker For
+
Docker is a toolthat is designed to benefit both
developersand system adminis trators, making it a part of many DevOps
(developers +operations) toolchains. For developers, it means that they can
focus on writing codewithout worrying about the system that it will ultimately
be running on. It also allows them to get a head start by using one ofthousands
of programs already designed to run in a Docker container as a part oftheir
application. For operations staff, Docker gives flexibility andpotentially
reduces the number of systems needed because of its small footprintand lower
overhead. 60/71
DockerContainer
+
Docker containers include the application and all of
itsdependencies, but share the kernel with other containers, running as is
olatedprocesses in user space on the host operating system. Docker containers
are not tied to any specificinfrastructure: they run on any computer, on any
infrastructure, and in anycloud. Now explain how to create a Docker container,
Dockercontainers can be created by either creating a Docker image and then
running itor you can use Docker images that are present on the Dockerhub.
Dockercontainers are basically runtime instances of Docker images.
DockerImage
+
Docker image is the source of Docker container. In
otherwords, Docker images are used to create containers. Images are created with
the build command, and they’llproduce a container when started with run. Images
are stored in a Docker regis try such asregis try.hub.docker.com because they
can become quite large, images are designedto be composed of layers of other
images, allowing a minimal amount of data tobe sent when transferring images
over the network.
Docker Swarm
+
Docker Swarm is native clustering for Docker. It turns
apoolof Docker hosts into a single, virtual Docker host. Docker Swarm serves the
standard Docker API, any toolthatalready communicates with a Docker daemon can
use Swarm to transparently scaleto multiple hosts. 61/71 I will also suggest you
to include some supportedtools: Dokku Docker Compose Docker Machine Jenkins
Questions:What is Dockerfileused for
+
A Dockerfile is a text document that contains all
thecommands a user could call on the command line to assemble an image. Using
docker build users can create an automated build thatexecutes several command-
line instructions in succession.
Docker different fromother container technologies
+
Docker containers are easy to deploy in a cloud. It can
getmore applications running on the same hardware than other technologies. It
makes it easy for developers to quickly create,ready-to-run containerized
applications and it makes managing and deployingapplications much easier. You
can even share containers with yourapplications.
Create Dockercontainer
+
We can use Docker image to create Docker container by
usingthe below command: 1 docker run -t-i command name This command will create
and start a container. You shouldalso add, If you want to check the lis t of all
running container with the statuson a host use the below command: 1 docker ps -a
Stop and restart theDocker container
+
In order to stop the Docker container you can use the
belowcommand: 1 docker stopcontainer ID Now to restart the Docker container you
can use: 62/71 1 docker restartcontainer ID
Difference between docker run anddocker create
+
The primary difference is that using‘docker create’createsa
container in a stopped state.Bonus point:You can use ‘docker create’andstore an
outputed container ID for later use. The best way to do it is to use‘docker
run’with --cidfile FILE_NAME as running it again won’t allow tooverwrite the
file.
Four states a Docker container can bein
+
Running Paused Restarting Exited
Difference Between Repository and aRegis try
+
Docker regis try is a service for hosting and dis
tributingimages. Docker repository is a collection of related Docker images.
Link containers
+
The simplest way is to use network port mapping.There’s
also the- -link flag which is deprecated.
Difference between Docker RUN, CMDand ENTRYPOINT
+
ACMDdoes not execute anything at build time, but specifies
the intendedcommand for the image. RUNactually runs acommand and commits the
result. If you would like your container to run the same executableevery time,
then you should consider usingENTRYPOINTin combination withCMD.
Containers can run per host
+
As far as the number of containers that can be run, this
really depends on your 63/71 environment. The size of your applications as well
as theamount of available resources will all affect the number of containers
that canbe run in your environment. Containers unfortunately are not magical.
They can’tcreate new CPU from scratch. They do, however, provide a more
efficient way ofutilizing your resources. The containers themselves are super
lightweight (remember,shared OS vs individual OS per container) and only last as
long as the processthey are running. Immutable infrastructure if you will.
Dockerhub
+
Docker hub is a cloud-based regis try service which
allowsyou to link to code repositories, build your images and test them,
storesmanually pushed images, and links to Docker cloud so you can deploy images
toyour hosts. It provides a centralized resource for container imagedis covery,
dis tribution and change management, user and team collaboration, andworkflow
automation throughout the development pipeline. VmWare DevOps Interview
Questions
VmWare
+
VMware was founded in 1998 by five different IT experts.
Thecompany officially launched its first product, VMware Workstation, in
1999,which was followed by the VMware GSX Server in 2001. The company has
launchedmany additional products since that time. VMware's desktop software is
compatible with all majorOSs, including Linux, Microsoft Windows, and Mac OS X.
VMware provides threedifferent types of desktop software: VMware Workstation:
This application is used to install and run multiple copies or instances of the
sameoperating systems or different operating systems on a single physical
computermachine. VMware Fusion: This productwas designed for Mac users and
provides extra compatibility with all otherVMware products and applications.
VMware Player: This productwas launched as freeware by VMware for users who do
nothave licensed VMWare products. This product is intended only for personeluse.
VMware's software hypervis ors intended for servers arebare-metal embedded
hypervis ors that can run directly on the server hardwarewithout the need of an
extra primary OS. VMware’s line of server softwareincludes: VMware ESX Server:
This is anenterpris e-level solution, which is built to provide better
functionality in comparis on to the freeware VMware Serverresulting from a
lesser system overhead. VMware ESX is integrated with VMwarevCenter that
provides additional solutions to improve the manageability andconsis tency of
the server implementation. VMware ESXi Server: This server is similar to the ESX
Server except that the service 64/71 console is replaced with BusyBox
installation and itrequires very low dis k space to operate. VMware Server:
Freewaresoftware that can be used over exis ting operating systems like Linux or
Microsoft Windows.
Virtualization
+
The process of creating virtual versions of
physicalcomponents i-e Servers, Storage Devices, Network Devices on a physical
host is called virtualization. Virtualization lets you run multiple virtual
machines on asingle physical machine which is called ESXi host.
Different types ofvirtualization
+
There are 5 basic types of virtualization Server
virtualization:consolidates the physical server and multiple OS can be run on a
single server. Network Virtualization:Provides complete reproduction of physical
network into a software defined network. Storage Virtualization:Provides an
abstraction layer for physical storage resources to manage andoptimize in
virtual deployment. Application Virtualization:increased mobility of
applications and allows migration ofVMs from host on another with minimal
downtime. Desktop Virtualization:virtualize desktop to reduce cost and increase
service
ServiceConsole
+
The service console is developed based up on Redhat
LinuxOperating system, it is used to manage the VMKernel
VCenterAgent
+
VC agent is an agent installed on ESX server which
enablescommunication between VC and ESX server. This Agent will be installed on
ESX/ESXi will be done whenyou try to add the ESx host in Vcenter.
VMKernel
+
65/71 VMWare Kernel is a Proprietary kernel of vmware and
is notbased on any of the flavors of Linux operating systems. VMkernel requires
an operating system to boot and manage thekernel. A service console is being
provided when VMWare kernel is booted. Only service console is based up on
Redhat Linux OS notVMkernel.
VMKernel and why itis important
+
VMkernel is a virtualization interface between a
VirtualMachine and the ESXi host which stores VMs. It is responsible to allocate
all available resources ofESXi host to VMs such as memory, CPU, storage etc.
It’s also controlspecial services such as vMotion,Fault tolerance, NFS, traffic
management and is CSI. To access these services, VMkernel port can be configured
onESXi server using a standard or dis tributed vSwitch. Without VMkernel,
hostedVMs cannot communicate with ESXi server.
Hypervis orand its types
+
Hypervis or is a virtualization layer that enables
multipleoperating systems to share a single hardware host. Each operating system
or VM is allocated physical resourcessuch as memory, CPU, storage etc by the
host. There are two types ofhypervis ors Hosted hypervis or (works asapplication
i-e VMware Workstation) Bare-metal (is virtualizationsoftware i-e VMvis or,
hyper-V which is installed directly onto the hardware and controls all physical
resources).
Questions:What is virtualnetworking
+
A network of VMs running on a physical server that
areconnected logically with each other is called virtual networking.
VSS
+
vSS stands for Virtual Standard Switch is responsible
forcommunication of VMs hosted on a single physical host. 66/71 it works like a
physical switch automatically detects a VMwhich want to communicate with other
VM on a same physical server.
VMKernal adapterand why it used
+
AVMKernel adapter provides network connectivity to the
ESXihost to handle network traffic for vMotion, IP Storage, NAS, Fault
Tolerance,and vSAN. For each type of traffic such as vMotion, vSAN etc.
separateVMKernal adapter should be created and configured.
Three port groupsare configured in ESXi networking
+
image Virtual Machine Port Group– Used for Virtual Machine
Network Service Console Port Group– Used for Service Console Communications
VMKernel Port Group– Used for VMotion, is CSI, NFS Communications
Main components ofvCenter Server architecture
+
There are three main components of vCenter
Serverarchitecture. image vSphere Client andWeb Client: a user interface.
vCenter Server database: SQLserver or embedded PostgreSQL to store inventory,
securityroles, resource pools etc. SSO: a security domain invirtual environment
Datastore
+
A Datastore is a storage location where virtual
machinefiles are stored and accessed. Datastore is based on a file system which
is called VMFS, NFS
Dis k typesare in VMware
+
There are three dis k types in vSphere. Thick Provis ioned
Lazy Zeroes: every virtual dis k is created bydefault in this dis k format.
Physical space is allocated to a VM whenvirtual dis k is created. It can’t be
converted to thin dis k. Thick Provis ion Eager Zeroes: this dis k type is used
in VMwareFault Tolerance. All required dis k space is allocated to a VM at time
ofcreation. It takes more time to create a virtual dis k compare to other dis
kformats. 67/71 Thin provis ion: It provides on-demand allocation of dis k space
toa VM. When data size grows, the size of dis k will grow. Storage
capacityutilization can be up to 100% with thin provis ioning.
Storage vMotion
+
It is similar to traditional vMotion, in Storage
vMotion,virtual dis k of a VM is moved from datastore to another. During Storage
vMotion,virtual dis k types think provis ioning dis k can be transformed to
thinprovis ioned dis k.
Use ofVMKernel Port
+
Vmkernel port is used by ESX/ESXi for vmotion, is CSI &NFS
communications. ESXi uses Vmkernel as the management network since itdon’t have
serviceconsole built with it.
Different types ofPartitions in ESX server
+
AC/-root Swap /var /Var/core /opt /home /tmp
Explain What is VMware DRS
+
VMware DRS stands for Dis tributed Resource Scheduler;
itdynamically balances resources across various host under cluster or
resourcepool. It enables users to determine the rules and policies which decide
howvirtual machines deploy resources, and these resources should be prioritized
tomultiple virtual machines. DevOps Testing Interview Questions
ContinuousTesting
+
Continuous Testing is the process of executing
automatedtests to obtain immediate feedback on the business ris ks associated
with in thelatest build. In this way, each build is tested continuously,
allowingDevelopment teams to get fast feedback so that they can prevent those
problemsfrom progressing to the next stage of Software delivery life-cycle. What
is AutomationTesting Automation testing is a process of automating the
manualtesting process. Automation testing involves use of separate testing
tools,which can be executed repeatedly and 68/71 doesn’t require any manual
intervention.
Benefits ofAutomation Testing
+
Here are some of the benefits of using Continuous Testing;
Supports execution of repeatedtest cases Aids in testing a large testmatrix
Enables parallelexecution Encourages unattendedexecution Improves accuracy
therebyreducing human generated errors Saves time and money
Continuous Testingimportant for DevOps
+
Continuous Testing allows any change made in the code to
betested immediately. This avoids the problems created by having“big-bang”
testing left to the end of the development cycle such asrelease delays and
quality is sues. In this way, Continuous Testing facilitates more frequentand
good quality releases.”
Testing typessupported by Selenium
+
Selenium supports two types of testing: Regression
Testing:It is the act of retesting a product around an area where a bug
wasfixed. Functional Testing:It refers to the testing of software features
(functional points)individually.
DifferenceBetween Assert and Verify commands in Selenium
+
Assertcommand checkswhether the given condition is true or
false. Verifycommand alsochecks whether the given condition is true or false.
Irrespective of thecondition being true or false, the program execution doesn’t
halts i.e.any failure during verification would not stop the execution and all
the teststeps would be executed.
Summary
+
DevOps refers to a wide range of tools, process
andpractices used bycompanies to improve their build, deployment, testing
andrelease life cycles. In order to ace a DevOps interview you need to have a
deepunderstanding of all of these tools and processes. Most of the technologies
and process used to implementDevOps are not is olated. Most probably you are
already familiar with many ofthese. All you have to do is to prepare for these
from DevOps perspective. In this guide I have created the largest set of
interviewquestions. Each section in this guide caters to a specific area
ofDevOps. In order to increase your chances of success in DevOps interview you
need to go through all of these questions.
Manually edit files mark as resolved then commit the changes.
Git Operations
+
Diffbet soft, mixed, hard reset?
+
Soft keeps changes staged, mixed unstages them, hard deletes
all changes in working tree.
To revert a merge?
+
Use git revert -m 1 to undo a merged commit safely.
To squash commits?
+
Use interactive rebase: git rebase -i HEAD~n and mark commits
as squash or fixup.
To view changes before committing?
+
Use git status and git diff to inspect changes in files.
To view git commit history?
+
Use git log or git log --oneline for concise history. Tools
like GitKraken or GitHub history visualize commits.
Git Tags & Releases
+
Diffbet lightweight and annotated tags?
+
Lightweight is just a pointer; annotated has metadata, tagger
info, and can be signed.
Git lfs?
+
Git Large File Storage handles large files (images, videos) by
storing pointers in Git while actual files reside elsewhere.
Git submodules?
+
Submodules allow embedding one Git repo inside another while
keeping histories separate.
To create and push tags?
+
git tag -a v1.0 -m "Release" → git push origin v1.0
To revert a pushed commit?
+
Use git revert to create a new commit that undoes changes
without rewriting history.
GitHub
+
Diffbet github and gitlab?
+
GitHub focuses on public and private repo hosting with Actions
for CI/CD. GitLab is devops lifecycle complete, offering CI/CD, issue tracking, and
container registry.
Fork in github?
+
A fork is a personal copy of someone else’s repository. Changes
can be pushed to your fork and later submitted as a pull request to the original
repo.
Github?
+
GitHub is a cloud-based Git repository hosting service. It
provides version control, collaboration, pull requests, issues, and CI/CD via GitHub
Actions.
To create a github repository?
+
Sign in → Click New Repository → Provide name, description,
visibility → Initialize with README → Create.
GitHub Actions
+
Action?
+
Reusable code that performs a specific task in a workflow step.
Github actions?
+
GitHub’s native CI/CD platform to automate workflows on Git
events.
Job in github actions?
+
A unit of work in a workflow, which can run on specified
runners.
Matrix builds?
+
Run a job in parallel across multiple OS, language, or
dependency versions.
Runner in github actions?
+
Server that executes workflows. Can be GitHub-hosted or
self-hosted.
Step in github actions?
+
An individual task inside a job, like running a script or
command.
Workflow syntax in github actions?
+
Workflows are YAML files defining on, jobs, steps, and runs-on
properties.
Workflow?
+
A set of automated steps triggered by events in the repository
(push, pull request, schedule).
You trigger github actions?
+
On push, pull requests, schedule, release, or manual dispatch
events.
You use secrets in github actions?
+
Store credentials in repository secrets and access them as
environment variables in workflows.
GitLab
+
Diffbet gitlab and github?
+
GitLab offers built-in CI/CD, pipelines, and issue management,
while GitHub focuses on code hosting and GitHub Actions for CI/CD.
Gitlab?
+
GitLab is a web-based Git repository manager providing CI/CD,
issue tracking, project management, and DevOps features in one platform.
Merge request in gitlab?
+
Equivalent of pull requests, merge requests let you review and
merge code from a feature branch into the main branch.
To secure gitlab repositories?
+
Use branch protection, access controls, MFA, deploy keys, and
GitLab CI/CD secrets for security.
GitLab CI/CD
+
.gitlab-ci.yml?
+
A YAML file defining jobs, stages, scripts, and pipelines for
GitLab CI/CD.
Artifacts in gitlab ci/cd?
+
Files generated by a job and stored for later stages, like
binaries or reports.
Cache in gitlab ci/cd?
+
Caches files between jobs or pipelines to speed up builds
(e.g., dependencies).
Environment in gitlab ci/cd?
+
Defines deployment targets like staging, production, or testing
with URLs and variables.
Gitlab ci/cd?
+
A built-in CI/CD system in GitLab for automating build, test,
and deployment pipelines.
Gitlab runners?
+
Agents that execute CI/CD jobs on specified environments
(shared or specific runners).
Job in gitlab ci/cd?
+
A unit of work executed in a stage, containing scripts and
conditions for execution.
Stages in gitlab ci/cd?
+
Logical phases of pipeline execution like build, test, deploy,
or cleanup.
You handle secrets in gitlab ci/cd?
+
Use CI/CD variables or GitLab Vault integrations to securely
manage credentials.
You trigger a gitlab pipeline?
+
Via push events, merge requests, scheduled pipelines, or API
calls.
GraphQL
+
Graphql best used?
+
GraphQL is ideal for applications needing flexible data
fetching, real-time updates, and complex relationships. Popular in mobile apps,
dashboards, and microservices.
Apollo client?
+
Apollo Client is a popular GraphQL client for fetching and
caching data. It simplifies state management and GraphQL API communication. Often
used with React.
Apollo server?
+
Apollo Server is a GraphQL server implementation for Node.js.
It allows building schemas, resolvers, and handling API execution. It integrates
well with Express and microservices.
Can graphql be used with microservices?
+
Yes, GraphQL is often used as a gateway for microservices.
Federation and stitching combine multiple services seamlessly into one schema.
Developed graphql?
+
GraphQL was developed by Meta (Facebook) in 2012 and
open-sourced in 2015. It helps handle complex data structures efficiently. Today, it
is widely used in modern web applications.
Diffbet rest & graphql?
+
REST uses multiple endpoints while GraphQL uses a single
endpoint. REST may overfetch or underfetch, while GraphQL returns only requested
fields. GraphQL offers real-time subscriptions; REST usually doesn’t.
Does graphql support caching?
+
GraphQL itself doesn't provide caching, but clients like Apollo
and Relay support it. Caching reduces unnecessary network calls. Server-side caching
can also be applied.
Does graphql support file uploads?
+
GraphQL supports uploads using multipart requests or libraries
such as Apollo Upload. It requires additional handling since it's not built-in
natively.
Does graphql work over http?
+
Yes, GraphQL works over HTTP POST or GET. It is
protocol-agnostic and can also run over WebSockets. It integrates easily with
existing HTTP infrastructure.
Graphiql?
+
GraphiQL is an IDE for building and testing GraphQL queries. It
provides a playground-like environment. It automatically provides schema
documentation.
Graphql batch requesting?
+
Batch requesting allows sending multiple queries in a single
network request. This reduces overhead and improves performance. Useful in
microservices and mobile apps.
Graphql n+1 problem?
+
It occurs when resolvers make repeated database calls for
nested fields. Tools like DataLoader help batch requests and prevent inefficiency.
Graphql validations?
+
Validation ensures correct syntax, field existence, and type
matching before execution. It prevents runtime errors and improves API stability. It
is handled automatically by schema rules.
Introspection in graphql?
+
Introspection enables clients to query schema metadata. It
helps tools auto-generate documentation. It makes GraphQL self-descriptive.
Is graphql replacing rest?
+
GraphQL does not replace REST entirely but complements it. REST
works well for simple and public APIs. GraphQL is preferred for complex and
data-driven applications.
Is graphql strongly typed?
+
Yes, GraphQL uses a strongly typed schema. Each field must have
a defined type, ensuring predictable responses and validation.
Is versioning handled in graphql?
+
GraphQL typically avoids versioning by evolving schemas
gradually. Fields can be deprecated without breaking clients. This reduces version
overhead.
Mutation in graphql?
+
Mutations are used for creating, updating, or deleting data.
They change server-side state. Mutations are similar to POST, PUT, or DELETE in
REST.
Overfetching?
+
Overfetching occurs when an API returns more data than needed.
It is common in REST fixed endpoints. GraphQL prevents overfetching by targeting
specific fields.
Query in graphql?
+
Query fetches data from a graphql server. it allows clients to
specify exactly what fields they need. the response matches the query structure.
Relay?
+
Relay is a GraphQL client developed by Meta. It focuses on
performance and caching with strict conventions. Appears mostly in large-scale apps.
Resolver in graphql?
+
Resolvers are functions that handle requests and return data
for a specific field. They act like controllers in REST. Each field in a schema can
have its own resolver.
Scalars?
+
Scalars represent primitive data types like String, Int,
Boolean, and Float. They are the base building blocks of a schema. Custom scalars
can also be created.
Schema in graphql?
+
A schema defines the structure of data and operations available
in GraphQL. It includes types, queries, and mutations. It acts as a contract between
client and server.
Subscriptions in graphql?
+
Subscriptions enable real-time communication using WebSockets.
They push updates automatically when data changes. Useful for chat apps and live
notifications.
Type in graphql?
+
Types define the shape of objects in GraphQL. Examples include
scalar types like Int and String, or custom object types. They help ensure strong
typing.
JavScript, jQuery & AJAX
+
$.ajaxSetup() in jQuery?
+
Sets default AJAX request options globally.
.serialize()?
+
Converts form elements into a URL-encoded string.
.serializeArray()?
+
Converts form elements into an array of name-value objects.
AddEventListener()?
+
Attaches event handlers to elements.
Advantages of AJAX?
+
Asynchronous updates, faster user experience, reduced server
load, partial page updates, and better interactivity.
Advantages of jQuery?
+
Simplifies JS code, cross-browser compatibility, easy DOM
manipulation, AJAX support, and animation effects.
AJAX caching issue and how to prevent it?
+
Browsers may cache GET requests; add unique query param or set
cache:false.
AJAX caching?
+
Browsers may cache GET responses; can be controlled via headers
or URL parameters.
AJAX callbacks?
+
Functions executed after request completes, e.g., success,
error, and complete callbacks.
AJAX long polling?
+
Client sends request and server holds response until data is
available.
AJAX push technique?
+
Server pushes data to client without client requesting (e.g.,
via WebSocket).
AJAX request header?
+
Metadata sent along with request, e.g., Content-Type,
Authorization.
AJAX response header?
+
Metadata sent by server, e.g., Content-Type, Cache-Control.
AJAX short polling?
+
Client sends requests periodically to check for updates.
AJAX?
+
AJAX (Asynchronous JS and XML) allows sending/receiving data
from server without reloading the page.
Apply()?
+
apply() is like call() but takes arguments as an array.
Array destructuring?
+
Extracting values from arrays and assigning them to variables.
Arrow function?
+
Arrow functions are concise syntax functions with lexical this
binding, no arguments object, and shorter function expressions.
Arrow functions?
+
Arrow functions are shorter syntaxes for writing functions and
do not bind their own this.
Async script loading?
+
Scripts loaded asynchronously without blocking parsing.
Async/await in JS.
+
async functions return a Promise. await pauses execution until
the Promise resolves, making asynchronous code easier to read.
Async/await?
+
Async/await allows writing asynchronous code in a
synchronous-like style.
Asynchronous code?
+
Code executed without blocking the main thread.
BigInt?
+
A primitive for representing large integers beyond number
limits.
Call()?
+
call() calls a function with a given this and arguments.
Callback function?
+
A callback is a function passed as an argument to another
function.
Callback functions?
+
A callback is a function passed as an argument to another
function to be executed after some operation completes.
Callback hell?
+
Deeply nested callbacks causing unreadable code.
Cancel an AJAX request?
+
Call .abort() on the XMLHttpRequest or jQuery AJAX object.
Chaining in jQuery?
+
Chaining allows multiple jQuery methods on the same element in
a single line using . syntax.
Check if a value is NaN?
+
Use Number.isNaN(value).
Closure?
+
A closure is a function that has access to its own scope,
parent scope, and global scope, even after the parent function has executed.
Constructor function?
+
A function used to create objects with the new keyword.
Cookies?
+
Small pieces of data stored by websites.
CORS in AJAX?
+
Cross-Origin Resource Sharing allows a web page to access
resources from a different domain securely.
Cross-origin request?
+
Request made from one domain to another, restricted by
Same-Origin Policy.
$(document).ready() runs after DOM is loaded, window.onload
runs after all resources (images, CSS) are fully loaded.
DiffBet $(this) and this in jQuery?
+
this refers to the raw DOM element; $(this) wraps it as a
jQuery object to use jQuery methods.
DiffBet .append() and .appendTo()?
+
.append() adds content inside selected elements; .appendTo()
inserts selected elements into the target.
DiffBet .on() and .bind()?
+
.on() is the preferred method for event binding and supports
delegation; .bind() is older and limited.
DiffBet .remove() and .detach()?
+
.remove() deletes element and events/data; .detach() keeps
events/data for reuse.
DiffBet .text() and .html()?
+
.text() gets/sets text content; .html() gets/sets HTML content
including tags.
DiffBet == and ===?
+
== checks value equality with type coercion. === checks strict
equality without type conversion.
DiffBet == and Object.is()?
+
== does type coercion, Object.is() strictly compares, treating
NaN as equal to NaN.
DiffBet ==, ===, and Object.is()?
+
== converts types, === strict equality, Object.is() handles
edge cases like NaN comparison.
DiffBet AJAX and Fetch API?
+
AJAX uses XMLHttpRequest, Fetch uses modern Promises and
cleaner syntax for HTTP calls.
DiffBet async and defer in script tag?
+
async executes script immediately when loaded; defer waits
until HTML parsing finishes.
DiffBet call, apply, and bind?
+
call invokes a function with a given this and arguments. apply
uses an array of arguments. bind returns a new function with bound this.
DiffBet for..in and for..of loops?
+
for..in iterates over object keys, for..of iterates over
iterable values.
DiffBet GET and POST in AJAX?
+
GET sends data via URL (limited size, cached), POST sends data
in body (secure, larger payload).
DiffBet GET, POST, PUT, DELETE in AJAX?
+
GET retrieves data, POST submits data, PUT updates resources,
DELETE removes resources.
DiffBet let and const?
+
let allows reassignment, const is immutable. Both are
block-scoped and not hoisted like var.
DiffBet localStorage and sessionStorage?
+
localStorage persists data indefinitely; sessionStorage clears
data when the browser tab closes.
DiffBet null and undefined?
+
undefined means a variable is declared but not assigned, null
is an assigned empty value.
DiffBet null, undefined, and NaN?
+
undefined = variable not assigned, null = empty value, NaN =
invalid numeric operation.
DiffBet serialize() and serializeArray() in jQuery?
+
serialize() returns URL-encoded string; serializeArray()
returns an array of objects with name/value pairs.
DiffBet synchronous and asynchronous AJAX?
+
Synchronous AJAX blocks the browser; asynchronous AJAX allows
other operations while the request completes.
DiffBet synchronous and asynchronous functions?
+
Synchronous blocks execution, async functions run independently
and use callbacks or promises.
DiffBet synchronous and asynchronous JS?
+
Synchronous executes line by line; asynchronous executes
operations like AJAX calls without blocking the main thread.
DiffBet var and function-scoped variable?
+
var is function-scoped and accessible throughout the function,
unlike let or const which are block-scoped.
DiffBet var, let, and const?
+
var is function-scoped, let and const are block-scoped. const
is immutable, while let can be reassigned. var is hoisted with undefined
initialization.
Disadvantages of AJAX?
+
Search engine indexing issues, browser history problems,
complexity, and potential security risks.
DOM manipulation?
+
Using JS to change HTML elements dynamically.
DOM?
+
The DOM (Document Object Model) represents HTML as a tree
structure. JS can manipulate DOM elements dynamically.
Error handling in JS?
+
Handled using try...catch blocks.
ES6 modules?
+
Modules using import/export syntax.
Eval()?
+
Executes a string as JavaScript code (not recommended).
Event bubbling?
+
Event bubbling is when an event propagates from the target
element up through its ancestors in the DOM.
Event capturing?
+
Event capturing triggers handlers from the outermost ancestor
down to the target.
Event delegation?
+
Attaching a single event listener on a parent to handle events
on child elements dynamically.
Event in JavaScript?
+
An event is an action or occurrence (like a click) that
JavaScript can respond to.
Event loop in JS?
+
Event loop handles asynchronous callbacks by checking the call
stack and task queue.
Event.preventDefault()?
+
Prevents the default action of the event.
Event.stopImmediatePropagation()?
+
Stops other handlers on the same element from executing.
Event.stopPropagation()?
+
Stops the event from bubbling up the DOM.
Fetch()?
+
fetch() is a modern API for making HTTP requests.
Filter()?
+
filter() returns elements that satisfy a condition.
For...in loop?
+
Iterates over enumerable object properties.
For...of loop?
+
Iterates over iterable values like arrays.
Function?
+
A function is a reusable block of code designed to perform a
specific task.
Generator function?
+
A function that can pause and resume using yield.
Global object?
+
Window in browsers, global in Node.js.
Handle AJAX errors?
+
Use error callback in jQuery or catch in Promises to handle
server errors or network issues.
Higher-order function?
+
A function that takes another function as an argument or
returns one.
Hoisting?
+
Hoisting moves variable and function declarations to the top of
their scope. Functions are fully hoisted, variables declared with var are hoisted
but undefined.
HTTP methods supported by AJAX?
+
GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS.
IIFE?
+
IIFE (Immediately Invoked Function Expression) runs immediately
after definition.
Include jQuery in a webpage?
+
Using a CDN or by downloading the jQuery library and linking it
via a script tag.
Inheritance in JavaScript?
+
Objects can inherit properties/methods from prototypes or
classes.
InnerHTML?
+
A property allowing insertion of HTML content inside an
element.
Instanceof?
+
Checks whether an object is an instance of a specific class.
JavaScript?
+
JavaScript is a client-side scripting language used to create
dynamic web content. It runs in browsers and can manipulate DOM, handle events, and
interact with APIs.
JQuery AJAX shorthand methods?
+
$.get(), $.post(), $.getJSON() simplify AJAX requests without
full $.ajax() configuration.
JQuery AJAX?
+
A simplified method in jQuery to perform asynchronous HTTP
requests using $.ajax(), $.get(), $.post().
JQuery data()?
+
Stores arbitrary data associated with elements.
JQuery effects?
+
Animations like .hide(), .show(), .fadeIn(), .slideUp() to
create UI effects.
JQuery events?
+
Actions that can be performed on elements like click, hover,
keypress, etc.
JQuery Mobile?
+
Framework built on jQuery for creating touch-optimized web apps
for mobile devices.
JQuery promises?
+
Objects representing eventual completion/failure of
asynchronous operations.
JQuery removeData()?
+
Removes data stored via data() from elements.
JQuery selector?
+
A string used to find HTML elements, similar to CSS selectors.
JQuery selectors?
+
Selectors target HTML elements using IDs (#id), classes
(.class), attributes, and pseudo-selectors.
JQuery UI?
+
A library built on jQuery to provide interactions, widgets, and
animations.
JQuery.fx?
+
Namespace for all jQuery effects.
JQuery.noConflict()?
+
Releases $ symbol to avoid conflicts with other libraries.
JQuery?
+
jQuery is a lightweight JS library that simplifies DOM
manipulation, event handling, animation, and AJAX calls.
Pipeline parallelism executes multiple steps simultaneously to
reduce execution time.
Jenkins pipeline retry?
+
Pipeline retry reruns failed steps or stages automatically.
Jenkins pipeline sequential execution?
+
Sequential execution runs pipeline steps one after another in
order.
Jenkins pipeline stage?
+
Stage defines a major phase in a pipeline like Build Test or
Deploy.
Jenkins pipeline step?
+
Step is a single task within a stage like compiling code or
running tests.
Jenkins pipeline syntax generator?
+
Pipeline syntax generator helps generate Groovy pipeline code
for steps and stages.
Jenkins plugin manager?
+
Plugin manager installs updates and removes Jenkins plugins.
Jenkins plugin?
+
A plugin extends Jenkins functionality like integrating SCMs
build tools or notifications.
Jenkins post-build action?
+
Post-build actions are tasks executed after a job completes
like emailing reports or archiving artifacts.
Jenkins pre-build action?
+
Pre-build actions are tasks executed before a job starts such
as environment setup.
Jenkins project-based security?
+
Project-based security sets permissions at the individual job
level.
Jenkins quiet period?
+
Quiet period delays build start to allow multiple commits to
accumulate before triggering a build.
Jenkins rollback?
+
Rollback reverts to a previous stable build in case of
deployment failure.
Jenkins scm integration?
+
SCM integration connects Jenkins with source control tools like
Git SVN or Mercurial.
Jenkins script console?
+
Script console executes Groovy scripts for administration and
job management.
Jenkins secret file?
+
Secret file is a type of credential for storing sensitive files
used in jobs or pipelines.
Jenkins secret text?
+
Secret text is a type of credential used for storing sensitive
strings like API keys.
Jenkins security realm?
+
Security realm manages authentication of users in Jenkins.
Jenkins shared library?
+
Shared library contains reusable pipeline code that can be
imported into multiple pipelines.
Jenkins slack integration?
+
Slack integration sends build status notifications to Slack
channels.
Jenkins sonarqube integration?
+
SonarQube integration allows Jenkins to analyze code quality
technical debt and vulnerabilities.
Jenkins sso?
+
Single Sign-On allows users to authenticate into Jenkins using
existing credentials from another system.
Jenkins test reporting?
+
Test reporting shows results of automated tests executed during
a build.
Jenkins throttling?
+
Throttling limits the number of concurrent builds on nodes or
jobs.
Jenkins upgrade process?
+
Upgrade process updates Jenkins core and plugins while
preserving jobs and configurations.
Jenkins upstream and downstream project?
+
Upstream triggers downstream builds; downstream runs after
upstream completion.
Jenkins webhook vs polling?
+
Webhook triggers jobs instantly on events; polling checks
periodically for changes.
Jenkins webhook vs scm polling?
+
Webhook pushes events to Jenkins immediately; SCM polling
checks periodically for changes.
Jenkins webhook?
+
Webhook triggers Jenkins jobs automatically when events like
commits or pull requests occur.
Jenkins workspace cleanup?
+
Workspace cleanup deletes files in workspace before or after a
job to avoid conflicts.
Key features of jenkins?
+
Key features include easy installation distributed builds
extensible via plugins and pipeline automation.
Scm polling in jenkins?
+
SCM polling checks source code repositories periodically to
trigger builds when changes are detected.
Some popular jenkins plugins?
+
Popular plugins include Git Maven Pipeline Slack Notification
and Docker plugins.
Use of jenkins master and slave?
+
Master coordinates jobs and manages the Jenkins environment;
slaves (agents) execute jobs for distributed builds.
Use of jenkins workspace?
+
Workspace is a directory where Jenkins checks out source code
and executes jobs.
Kubernet
+
Labels and Selectors?
+
Labels are key-value pairs attached to Kubernetes objects for
identification and grouping. Selectors query objects based on these labels. They are
essential for service discovery and workload management.
Blue-Green Deployment in Kubernetes?
+
Blue-Green deployment creates two identical environments,
allowing seamless switch-over during releases. It reduces downtime and rollback
risk. Kubernetes services route traffic between versions.
ConfigMap?
+
ConfigMap stores configuration data separate from application
code. It helps manage environment variables, config files, and parameters. It avoids
rebuilding container images when configuration changes.
Container Runtime in Kubernetes?
+
Container runtime executes and manages containers. Supported
runtimes include Docker, containerd, and CRI-O. Kubernetes interacts with runtimes
using the Container Runtime Interface (CRI).
Cronjob?
+
CronJob runs jobs on a scheduled time like Unix cron.
DaemonSet?
+
A DaemonSet ensures a copy of a Pod is running on all or
selected nodes. It is ideal for log collectors, monitoring agents, or networking
components. When new nodes are added, DaemonSet automatically deploys the Pod.
Deployment?
+
A Deployment defines how application Pods should be created,
updated, and scaled. It provides rolling updates, version control, and rollback
capabilities. Deployments ensure the desired number of Pods are always running.
Pod and a container?
+
Pod can contain one or more containers sharing storage and
network; container is a single runtime instance.
ClusterIP and NodePort?
+
ClusterIP exposes service inside cluster; NodePort exposes
service on a static port on node IP.
Deployment and replicaSet?
+
Deployment manages replicaSets and allows rolling updates and
rollback; replicaSet only ensures the number of pod replicas.
Ephemeral and persistent storage?
+
Ephemeral storage lasts only for pod lifecycle; persistent
storage persists independently.
Labels and annotations?
+
Labels are used for selection and organization; annotations
store metadata for human or tool usage.
Statefulset and deployment?
+
StatefulSet maintains pod identity and order; Deployment
manages stateless apps.
ExternalName service type?
+
ExternalName maps service to an external DNS name.
Headless service?
+
Headless service has no cluster IP and allows direct pod
access.
Helm chart?
+
Helm chart is a package that contains Kubernetes manifests and
templates for deploying apps.
Helm release?
+
Helm release is a deployed instance of a chart in the cluster.
Helm?
+
Helm is a package manager for Kubernetes applications. It uses
Charts to define, install, upgrade, and manage deployments. Helm simplifies
repetitive configurations and environment consistency.
Job in Kubernetes?
+
Job runs a batch task or process to completion.
Kubeconfig?
+
Kubeconfig is a configuration file that specifies cluster
connection details and credentials.
Kubectl annotate?
+
Kubectl annotate adds or updates annotations on resources.
Kubectl apply vs create?
+
Apply creates or updates resources idempotently; create fails
if resource exists.
Kubectl delete?
+
Kubectl delete removes resources from the cluster.
Kubectl describe?
+
Kubectl describe shows detailed information about a resource.
Kubectl exec?
+
Kubectl exec runs commands inside a container in a pod.
Kubectl get?
+
Kubectl get lists resources like pods services or nodes.
Kubectl label?
+
Kubectl label adds or updates labels on resources.
Kubectl logs?
+
Kubectl logs fetches logs from a container in a pod.
Kubectl port-forward?
+
Port-forward forwards a local port to a pod port for access.
Kubectl rollout?
+
Kubectl rollout manages deployment updates status undo and
history.
Kubectl scale?
+
Kubectl scale changes the number of replicas in a deployment or
replicaSet.
Kubectl top?
+
Kubectl top shows resource usage of nodes and pods.
Kubectl?
+
Kubectl is the command-line tool used to interact with
Kubernetes clusters. It supports deployment, debugging, scaling, and configuration
management. Administrators use it for operational control.
Kubernetes admission controller?
+
Admission controllers intercept API requests for validation or
mutation.
Kubernetes API aggregation layer?
+
API aggregation layer allows extending Kubernetes API with
additional APIs.
Kubernetes best practices?
+
Best practices include using namespaces resource limits probes
ConfigMaps secrets and monitoring.
Kubernetes cluster auto-scaling?
+
Cluster auto-scaling adjusts the number of nodes based on
resource demand.
Kubernetes coredns?
+
CoreDNS is the default DNS service in Kubernetes for service
discovery.
Kubernetes CRD?
+
Custom Resource Definition allows creating custom resources in
the cluster.
Kubernetes dashboard?
+
Dashboard is a web-based UI to manage and monitor Kubernetes
clusters.
Kubernetes default service account?
+
Default service account is automatically assigned to pods
without explicit service account.
Kubernetes endpoint?
+
Endpoint represents a set of IPs and ports associated with a
service.
Kubernetes ephemeral container?
+
Ephemeral container is used for debugging running pods without
modifying original containers.
Kubernetes etcd cluster?
+
Etcd cluster stores configuration and state of Kubernetes
reliably.
Kubernetes event?
+
Event records state changes or errors in cluster resources.
Kubernetes Helm?
+
Helm is a package manager for Kubernetes that deploys
applications using charts.
Kubernetes horizontal pod autoscaler metrics?
+
HPA metrics can include CPU memory or custom metrics.
Kubernetes ingress?
+
Ingress exposes HTTP and HTTPS routes from outside the cluster
to services.
Kubernetes kubeadm?
+
Kubeadm is a tool to bootstrap Kubernetes clusters easily.
Kubernetes kube-state-metrics?
+
Kube-state-metrics exports cluster state metrics for
monitoring.
Kubernetes labels?
+
Labels are key-value pairs used to organize select and manage
resources.
Kubernetes liveness probe?
+
Liveness probe checks if pod is alive and restarts it if
unresponsive.
Kubernetes logging?
+
Logging collects container and cluster logs for debugging and
monitoring.
Kubernetes monitoring?
+
Monitoring tracks cluster health performance and resource usage
using tools like Prometheus.
Kubernetes mutating vs validating webhook?
+
Mutating webhook can change API objects; validating webhook
only approves or rejects.
Kubernetes network policy?
+
Network policy defines rules for pod-to-pod or pod-to-external
traffic communication.
Kubernetes operator vs Helm?
+
Operator manages application lifecycle with automation; Helm
simplifies deployment and upgrades.
Kubernetes operator?
+
Operator extends Kubernetes functionality to manage complex
applications using custom controllers.
Kubernetes persistent volume types?
+
Types include hostPath NFS AWS EBS GCE Persistent Disk and
more.
Kubernetes pod disruption budget?
+
Pod disruption budget ensures minimum available pods during
voluntary disruptions.
Kubernetes proxy?
+
Proxy manages traffic routing to pods or services.
Kubernetes RBAC?
+
Role-Based Access Control manages user and application
permissions in the cluster.
Kubernetes readiness probe?
+
Readiness probe checks if pod is ready to serve traffic.
Kubernetes resource limits?
+
Resource limits define maximum CPU and memory a container can
use.
Kubernetes resource requests?
+
Resource requests define the minimum CPU and memory required
for scheduling.
Kubernetes role of kube-proxy?
+
Kube-proxy manages networking rules to route traffic to pods.
Kubernetes scheduler default behavior?
+
Scheduler assigns pods to nodes based on resource availability
affinity and taints.
Kubernetes scheduler extender?
+
Scheduler extender allows custom scheduling decisions using
external policies.
Kubernetes selectors?
+
Selectors are used to query and filter resources based on
labels.
Kubernetes service account?
+
Service account provides identity for pods to access Kubernetes
API.
Kubernetes startup probe?
+
Startup probe checks application startup status before other
probes.
Kubernetes storage class?
+
StorageClass defines storage type provisioner and parameters
for dynamic provisioning.
LoadBalancer service type?
+
LoadBalancer provisions an external load balancer to distribute
traffic to pods.
Node affinity?
+
Node affinity constrains pods to specific nodes based on
labels.
Node?
+
A Node is a physical or virtual machine in a Kubernetes cluster
that runs containers. Each node contains Kubelet, container runtime, and Kube-proxy.
Nodes execute workloads assigned by the control plane.
Persistent Volume (PV)?
+
A PV is a cluster-level storage resource provisioned
independently of pods. It can be cloud storage, NFS, or local disk. PVs ensure data
persists even if pods are recreated.
Persistent Volume Claim (PVC)?
+
A PVC is a request for storage by a pod. It binds to an
available PV dynamically or statically. PVCs decouple storage provisioning from
application deployment.
Pod affinity and anti-affinity?
+
Pod affinity schedules pods close to other pods; anti-affinity
avoids placing pods together.
Pod?
+
A Pod is the smallest deployable unit in Kubernetes and can
contain one or multiple containers. Containers in a pod share network and storage
resources. Pods are ephemeral, meaning they can be recreated automatically if they
fail.
RBAC in Kubernetes?
+
RBAC (Role-Based Access Control) controls permissions for
users, groups, and service accounts. It defines what actions can be performed on
which Kubernetes objects. RBAC helps secure production environments.
Role and clusterrole?
+
Role defines permissions in a namespace; ClusterRole defines
permissions cluster-wide.
Rolebinding and clusterrolebinding?
+
RoleBinding assigns Role to users in a namespace;
ClusterRoleBinding assigns ClusterRole cluster-wide.
Secret?
+
Secrets store sensitive information like passwords, API keys,
and tokens in encoded form. They are mounted securely into Pods or passed as
environment variables. Kubernetes helps restrict and encrypt access to Secrets.
Service?
+
A Service provides stable networking and load balancing for
Pods. Since Pods are dynamic, a service exposes them using DNS names or IPs. It
ensures traffic routing remains consistent even if underlying pods restart.
Taint and toleration?
+
Taint marks nodes to repel certain pods; toleration allows pods
to be scheduled on tainted nodes.
Types of Kubernetes services?
+
Types include ClusterIP NodePort LoadBalancer and ExternalName.
Vertical Pod Autoscaler (VPA)?
+
VPA adjusts CPU and memory resource requests/limits for pods
based on usage patterns. It focuses on optimizing resource allocation per pod rather
than increasing pod count. It is ideal for workloads with unpredictable resource
needs.
Vertical Pod Autoscaler?
+
VPA adjusts resource requests and limits of pods automatically
based on usage.
Volume in Kubernetes?
+
Volume provides a way for containers in a pod to access
storage.
KUBERNETES
+
Use Kubernetes?
+
Kubernetes enables scalability, automation, resilience, and
efficient resource utilization.
Problem does Kubernetes solve?
+
It manages containerized workloads across clusters reliably.
Kubernetes cluster?
+
A Kubernetes cluster is a set of nodes managed by Kubernetes to
run containers.
Main components of a cluster?
+
Control Plane and Worker Nodes.
Control Plane?
+
Control Plane manages scheduling, scaling, and cluster state.
Node in Kubernetes?
+
A Node is a worker machine that runs Pods.
Runs on every Node?
+
Kubelet, container runtime, and kube-proxy.
Kubelet?
+
Kubelet ensures containers defined in Pod specs are running.
Kube-proxy?
+
Kube-proxy manages networking and traffic routing to Pods.
Container runtime?
+
Software that runs containers like Docker, containerd, or
CRI-O.
Interface connects Kubernetes to runtimes?
+
Container Runtime Interface (CRI).
Etcd?
+
etcd is a distributed key-value store storing cluster state.
Etcd critical?
+
Loss of etcd means loss of cluster state.
Kubernetes API Server?
+
API Server exposes Kubernetes APIs and handles all requests.
Kubernetes Scheduler?
+
Scheduler assigns Pods to Nodes based on constraints.
Controller Manager?
+
It ensures desired state matches actual state.
Desired state?
+
The configuration defined by users.
Actual state?
+
Current running state of the cluster.
Kubernetes cloud-agnostic?
+
It runs on cloud, on-prem, and hybrid environments.
Pods used instead of containers directly?
+
Pods provide shared networking and storage for containers.
Can a Pod have multiple containers?
+
Yes, containers in a Pod share network and volumes.
Single-container Pod?
+
A Pod running one application container.
Multi-container Pod?
+
A Pod running multiple tightly coupled containers.
Sidecar container?
+
A helper container that extends main container functionality.
Init container?
+
A container that runs before application containers start.
Pod lifecycle?
+
The sequence of states a Pod goes through from creation to
termination.
Pod states?
+
Pending, Running, Succeeded, Failed, and Unknown.
Pod restart policy?
+
Defines when containers in a Pod should restart.
Restart policy values?
+
Always, OnFailure, and Never.
Pod specification?
+
YAML/JSON definition describing Pod configuration.
Container image in Pod spec?
+
Defines which image the container runs.
Resource request?
+
Minimum CPU and memory required by container.
Resource limit?
+
Maximum CPU and memory a container can use.
Happens when a container exceeds limits?
+
It may be throttled or terminated.
Workload in Kubernetes?
+
A resource managing Pods for applications.
Common workload types?
+
Deployment, ReplicaSet, StatefulSet, DaemonSet, and Job.
Use workloads instead of standalone Pods?
+
Workloads provide scaling, self-healing, and updates.
Self-healing in Kubernetes?
+
Automatically restarting or rescheduling failed Pods.
Deployment in Kubernetes?
+
A Deployment manages Pod replicas and updates declaratively.
Deployments used?
+
They provide rolling updates, rollback, and scaling.
ReplicaSet?
+
A controller that ensures a specified number of Pods are
running.
Are Deployments and ReplicaSets related?
+
Deployments manage ReplicaSets automatically.
Desired replica count?
+
Number of Pods defined in Deployment spec.
Scaling in Kubernetes?
+
Increasing or decreasing number of Pod replicas.
Manual scaling?
+
Scaling replicas by changing replica count.
Horizontal Pod Autoscaler (HPA)?
+
Automatically scales Pods based on metrics.
Metrics does HPA use?
+
CPU, memory, or custom metrics.
Rolling update?
+
Gradual replacement of Pods with new version.
MaxSurge?
+
Maximum Pods created above desired count.
MaxUnavailable?
+
Maximum Pods allowed to be unavailable during update.
Rollback?
+
Reverting Deployment to previous version.
Revision history?
+
Stored history of Deployment versions.
Zero-downtime deployment?
+
Updating applications without service interruption.
Scaling policy?
+
Rules controlling scale behavior.
Scaling important?
+
It ensures performance and cost efficiency.
Services needed?
+
Pod IPs are dynamic and change frequently.
ClusterIP service?
+
Exposes service internally within the cluster.
NodePort service?
+
Exposes service on a static port on each node.
LoadBalancer service?
+
Exposes service externally using cloud load balancer.
ExternalName service?
+
Maps a service to an external DNS name.
Service selector?
+
Labels used to match Pods for traffic routing.
Kube-proxy role in services?
+
Manages service networking and traffic forwarding.
Kubernetes networking model?
+
Every Pod can communicate with every other Pod.
CNI?
+
Container Network Interface for implementing Pod networking.
Pod-to-Pod communication?
+
Direct communication without NAT.
Pod-to-Service communication?
+
Traffic routed through Service abstraction.
Ingress?
+
An API object managing external HTTP/HTTPS access.
Ingress Controller?
+
A component that implements Ingress rules.
Ingress rule?
+
Routing rules based on host and path.
TLS termination in Ingress?
+
Handling HTTPS at Ingress level.
Path-based routing?
+
Routing traffic based on URL paths.
Host-based routing?
+
Routing traffic based on domain name.
Network policy?
+
Rules controlling Pod network traffic.
Kubernetes networking important?
+
It enables reliable and secure service communication.
ConfigMap in Kubernetes?
+
A ConfigMap stores non-sensitive configuration data separately
from application code.
ConfigMaps used?
+
To externalize configuration and avoid hardcoding values.
Data formats can ConfigMaps store?
+
Key-value pairs, files, and environment variables.
ConfigMaps be consumed by Pods?
+
As environment variables, command-line arguments, or mounted
files.
Secret in Kubernetes?
+
A Secret stores sensitive information like passwords and
tokens.
Use Secrets instead of ConfigMaps?
+
Secrets provide better security for sensitive data.
Types of Secrets exist?
+
Opaque, TLS, Docker registry, and service account tokens.
Are Secrets stored in Kubernetes?
+
Base64-encoded and stored in etcd.
Secrets be injected into Pods?
+
As environment variables or mounted volumes.
Environment management?
+
Managing configuration across different environments like dev
and prod.
Immutable configuration?
+
Configuration that does not change at runtime.
Dynamic configuration reload?
+
Updating configuration without restarting Pods.
Config drift?
+
Mismatch between intended and actual configuration.
Config drift prevented?
+
Using declarative manifests and version control.
Separation of config and code?
+
Keeping configuration independent from application logic.
Secret rotation?
+
Regularly updating sensitive credentials.
Least privilege for secrets?
+
Granting minimal access to secrets.
RBAC role in secret access?
+
Controls who can access Secrets.
External secrets management?
+
Using tools like Vault or cloud secret managers.
Configuration management critical?
+
It ensures security, consistency, and portability.
Kubernetes volume?
+
A volume provides storage accessible to containers in a Pod.
Volumes needed?
+
Container file systems are ephemeral.
EmptyDir volume?
+
A temporary volume shared between containers in a Pod.
HostPath volume?
+
Mounts a directory from the host node.
Persistent storage?
+
Storage that survives Pod restarts.
PersistentVolume (PV)?
+
A cluster-wide storage resource.
PersistentVolumeClaim (PVC)?
+
A request for storage by a Pod.
Dynamic provisioning?
+
Automatic creation of PVs when PVCs are requested.
StorageClass?
+
Defines storage type and provisioning rules.
Access mode?
+
Defines how volumes can be mounted.
Access modes?
+
ReadWriteOnce, ReadOnlyMany, ReadWriteMany.
Reclaim policy?
+
Defines what happens to PV after PVC deletion.
Reclaim policies?
+
Retain, Delete, Recycle.
StatefulSet?
+
A workload managing stateful applications.
StatefulSet different from Deployment?
+
StatefulSets maintain identity and storage per Pod.
Stable network identity?
+
Persistent hostname for each Pod.
VolumeClaimTemplates?
+
Templates for creating PVCs per Pod.
Workloads need StatefulSets?
+
Databases and stateful services.
Ordered deployment in StatefulSet?
+
Pods start and stop in sequence.
Persistent storage important?
+
It ensures data durability and reliability.
Kubernetes security?
+
Practices to protect clusters, workloads, and data from
threats.
Authentication in Kubernetes?
+
Verifying identity of users and components.
Authorization in Kubernetes?
+
Determining what authenticated users can do.
RBAC?
+
Role-Based Access Control for Kubernetes resources.
Role?
+
Defines permissions within a namespace.
ClusterRole?
+
Defines permissions across the entire cluster.
RoleBinding?
+
Associates a Role with users or service accounts.
ClusterRoleBinding?
+
Associates a ClusterRole with subjects cluster-wide.
ServiceAccount?
+
An identity for Pods to access Kubernetes API.
Pod Security?
+
Controls security settings applied to Pods.
Pod Security Policy?
+
Legacy mechanism for enforcing Pod security.
Replaced Pod Security Policy?
+
Pod Security Admission.
Pod Security Standards?
+
Privileged, Baseline, and Restricted.
Least privilege principle?
+
Granting minimal permissions required.
NetworkPolicy?
+
Controls traffic flow between Pods.
Secrets encryption at rest?
+
Encrypting secrets stored in etcd.
Image security?
+
Ensuring images are trusted and scanned.
Runtime security?
+
Monitoring container behavior during execution.
Security context?
+
Defines privilege and access control for Pods.
Kubernetes security critical?
+
It prevents unauthorized access and breaches.
Observability in Kubernetes?
+
The ability to understand cluster behavior using metrics, logs,
and traces.
Monitoring important in Kubernetes?
+
To ensure cluster health, performance, and reliability.
Kubernetes metrics?
+
Numerical data representing resource usage and performance.
Metrics Server?
+
A component that collects resource metrics from nodes and Pods.
Metrics does Metrics Server provide?
+
CPU and memory usage.
Cluster monitoring?
+
Observing node and control plane health.
Application monitoring?
+
Monitoring performance and behavior of workloads.
Logging in Kubernetes?
+
Collecting and storing logs generated by containers and system
components.
Container logs stored?
+
On the node filesystem by container runtime.
Centralized logging needed?
+
Pods are ephemeral and logs are distributed.
Node-level logging agent?
+
An agent that collects logs from nodes.
Tracing in Kubernetes?
+
Tracking requests across services.
Distributed tracing used for?
+
Debugging latency and dependency issues.
Health check in Kubernetes?
+
Mechanism to determine application health.
Liveness probe?
+
Checks if a container is alive.
Readiness probe?
+
Checks if a container is ready to receive traffic.
Startup probe?
+
Checks if application has started successfully.
Observability critical in Kubernetes?
+
It enables proactive issue detection and faster recovery.
Kubernetes Commands
+
Working with Pods
+
kubectl get pods -> # Lists all pods in the current namespace
Working with Deployments
+
kubectl get deployments -> # Lists all deployments
Working with Services
+
kubectl get services -> # Lists all services
Working with ConflgMaps and Secrets
+
kubectl create configmap --from-literal=key=value -> # Creates
a ConfigMap
Working with Namespaces
+
kubectl get namespaces -> # Lists all namespaces
Managing Nodes
+
kubectl get nodes -> # Lists all nodes in the cluster
Working with Persistent Volumes (PV) and Claims (PVC)
+
kubectl get pv -> # Lists all persistent volumes
Conflguring and Viewing Contexts
+
kubectl config get-contexts -> # Lists all available contexts
Debugging Resources
+
kubectl describe -> # Describes any Kubernetes resource
Managing Jobs and CronJobs
+
kubectl get jobs -> # Lists all jobs
Applying and Deleting Manifests
+
kubectl apply -f -> # Applies configuration from a YAML file
LINQ
+
Advantages & disadvantages of LINQ?
+
Advantages: cleaner code, compile-time errors, less
complexity., Disadvantages: slower than SP sometimes, hidden execution cost., Good
for quick development but requires understanding of performance implications.
Advantages and disadvantages of LINQ?
+
Benefits: cleaner code, type safety, reusability, and
readability., Drawbacks: may generate complex SQL and performance overhead in large
datasets., LINQ debugging may also require profiling., Still, it improves overall
development speed.
Advantages and disadvantages of PLINQ
+
Advantages: Faster execution on large, CPU-bound workloads;
automatic parallelization., Disadvantages: Overhead for small collections;
thread-safety challenges., Not suitable for queries requiring ordered results unless
specified., Performance depends on hardware and workload.
Advantages and disadvantages of PLINQ?
+
Advantages: Faster processing, parallel execution, better CPU
utilization., Disadvantages: Overhead on small data, non-deterministic ordering,
thread safety required., Best for heavy computations., Not suitable for UI-dependent
operations.
Best practices for writing LINQ queries?
+
Use meaningful variable names and avoid complex nested
queries., Prefer method syntax when chaining operations., Use deferred execution
carefully to avoid unintended re-execution., Optimize with .ToList() or caching when
needed.
Can LINQ be used for pagination?
+
Yes, pagination is done using Skip() and Take() methods.,
Example: var result = data.Skip(10).Take(10);., Useful for loading data in batches
to improve performance., Commonly used in grid and list paging.
Challenging LINQ optimization example (short):
+
I optimized a nested LINQ query that caused memory spikes., I
replaced multiple loops with a Join and SelectMany combination., Execution time
dropped significantly., Proper indexing further improved performance.
Choosing query syntax vs method syntax?
+
Use query syntax for readability with joins or grouping., Use
method syntax for advanced operations like Aggregate, Skip, Take., Both compile the
same way., Choice depends on clarity and complexity.
Collaboration example using LINQ in team development.
+
We built a feature where filtering and sorting logic was shared
across modules., We standardized LINQ patterns and reused expressions through
extension methods., Code reviews ensured consistency and performance optimization.,
The collaboration improved code maintainability across the system.
Compiled queries in LINQ?
+
Compiled queries cache the SQL translation to improve
performance., They avoid reprocessing the query every time., Useful in frequently
executed operations., Supported mainly in LINQ to SQL and EF.
Decide between query syntax and method syntax?
+
Query syntax is used when the expression looks similar to SQL
and improves readability., Method syntax is preferred when using advanced operations
like GroupBy, Skip, or Aggregate., Both produce the same results, and sometimes a
combination is required., Choice often depends on clarity and complexity of the
query.
Deferred vs Immediate Execution?
+
Deferred execution: executed only when needed., Immediate
execution: query executes instantly using operators like ToList(), Count().,
Deferred helps optimize performance, immediate retrieves fixed results.
Describe a challenging situation where you optimized a LINQ
query.
+
I once worked on a project where a nested LINQ query caused
slow database performance., I optimized it by applying Join instead of multiple
Where clauses and added Select projections., Execution time improved drastically by
reducing unnecessary data retrieval., This ensured faster response and improved
system scalability.
Aggregate() and Sum()?
+
Aggregate() performs custom aggregation; Sum() calculates total
of numeric values.
All() and Any()?
+
All() checks if all elements satisfy a condition; Any() checks
if at least one element satisfies a condition.
AsEnumerable() and Cast()?
+
AsEnumerable() treats data source as IEnumerable; Cast ()
converts elements to specified type.
Cast() and OfType()?
+
Cast() converts all elements and may throw exceptions;
OfType () filters elements by type.
Concat() and Union()?
+
Concat() appends sequences including duplicates; Union()
combines sequences and removes duplicates.
Contains() and Any()?
+
Contains() checks for specific value; Any() checks for elements
satisfying a condition.
Contains() and Exists()?
+
Contains() checks for specific value; Exists() checks if any
element satisfies a condition.
DefaultIfEmpty() and FirstOrDefault()?
+
DefaultIfEmpty() returns default value if sequence is empty;
FirstOrDefault() returns first element or default if empty.
Deferred and immediate execution in LINQ?
+
Deferred execution delays evaluation until results are needed;
immediate execution evaluates query immediately using methods like ToList(),
Count().
Deferred and immediate execution methods?
+
Deferred execution methods are evaluated when enumerated;
immediate execution methods evaluate immediately like ToList(), Count().
Deferred Execution and Immediate Execution in LINQ?
+
Deferred execution delays query evaluation; Immediate execution
evaluates query immediately using methods like ToList(), Count().
Distinct() and GroupBy()?
+
Distinct() removes duplicates; GroupBy() groups elements into
collections.
Expression Trees and Delegates in LINQ?
+
Delegates execute code; Expression Trees represent code as
data, allowing translation to SQL in LINQ to SQL.
First() and Single()?
+
First() returns first matching element; Single() expects
exactly one matching element.
First() returns the first element, throws exception if none;
FirstOrDefault() returns default if none; Single() expects exactly one element;
SingleOrDefault() returns default if none, throws if more than one.
FirstOrDefault() and SingleOrDefault()?
+
FirstOrDefault() returns first or default; SingleOrDefault()
returns single or default and throws if more than one.
GroupBy() and SelectMany()?
+
GroupBy() groups elements; SelectMany() flattens nested
collections.
GroupBy() and ToLookup()?
+
GroupBy() generates groups on-the-fly; ToLookup() creates a
persistent lookup structure.
Intersect() and Except()?
+
Intersect() returns common elements; Except() returns elements
in first sequence not in second.
IQueryable and IEnumerable?
+
IEnumerable works with in-memory collections; IQueryable works
with remote data sources and allows query translation.
IQueryable and IEnumerable in deferred execution?
+
IQueryable executes queries on data source with translation;
IEnumerable executes queries in memory.
IQueryable and IEnumerable?
+
IEnumerable queries in memory; IQueryable queries remote
sources with translation.
Reverse() reverses current order; OrderByDescending() sorts
elements descending.
Select() and SelectMany()?
+
Select() projects each element; SelectMany() flattens
collections of collections into a single sequence.
SequenceEqual() and Equals()?
+
SequenceEqual() compares sequences element by element; Equals()
compares object references or values.
Skip() and SkipWhile()?
+
Skip() skips fixed number of elements; SkipWhile() skips until
condition fails.
Take() and Skip()?
+
Take() selects first N elements; Skip() skips first N elements.
Take() and TakeWhile()?
+
Take() selects fixed number of elements; TakeWhile() selects
elements until condition fails.
TakeWhile() and SkipWhile()?
+
TakeWhile() selects elements until predicate fails; SkipWhile()
skips elements until predicate fails.
ToDictionary() and ToLookup()?
+
ToDictionary() creates dictionary with unique keys; ToLookup()
allows multiple elements per key.
ToList() and ToArray()?
+
ToList() converts sequence to List; ToArray() converts
sequence to array.
Union() and Concat()?
+
Union() removes duplicates; Concat() includes duplicates.
Where() and OfType()?
+
Where() filters elements based on a condition; OfType() filters
elements based on type.
XElement and XDocument?
+
XElement represents an element in XML; XDocument represents the
entire XML document.
Zip() and Join() in LINQ?
+
Zip() combines elements by index from two sequences; Join()
combines sequences based on matching keys.
DiffBet deferred and immediate execution?
+
Deferred execution delays running the query until enumeration.,
Immediate execution happens as soon as methods like ToList(), Count() run., Deferred
saves resources, immediate captures data snapshot., Choice depends on usage
scenario.
DiffBet deferred execution and immediate execution in LINQ?
+
Deferred execution means the query runs only when iterated
(e.g., Where, Select)., Immediate execution runs instantly (e.g., ToList(), Count(),
First())., Deferred execution improves performance by delaying processing until
needed., Immediate execution forces evaluation and materializes data immediately.
DiffBet IEnumerable and IQueryable?
+
IEnumerable: In-memory, LINQ to Objects, client-side
evaluation, IQueryable: Provider-based, server-side evaluation, LINQ to SQL/Entities
DiffBet LINQ and Stored Procedures?
+
Stored procedures execute inside the database and are often
faster., LINQ integrates into application code and provides compile-time safety.,
Stored procedures require SQL knowledge, while LINQ is type-safe and
object-oriented., LINQ is easier to maintain in application logic.
Query syntax looks like SQL and improves readability., Method
syntax uses lambda expressions and extension methods., Both compile to the same
result., Method syntax supports more complex and advanced operations.
DiffBet Select & SelectMany?
+
Select returns nested collections., SelectMany flattens and
returns a single sequence., Select = mapping, SelectMany = flattening., Used mainly
with collections inside collections.
DiffBet Select and SelectMany?
+
Select projects each item into a new form while maintaining
structure., SelectMany flattens nested collections into a single sequence., Use
Select for single-level projections and SelectMany when working with collections of
collections., SelectMany is commonly used in one-to-many relationships.
DiffBet Skip() and SkipWhile()?
+
Skip() skips a fixed number of elements., SkipWhile() skips
elements until a condition becomes false., Use Skip() for pagination and SkipWhile()
for rule-based skipping., Both return remaining elements.
Differences between Select and SelectMany?
+
Select returns a collection of collections (nested results).,
SelectMany flattens nested collections into a single list., Select = 1-to-1 mapping,
SelectMany = 1-to-many., Used when dealing with hierarchical data.
Do LINQ queries support exception handling?
+
Yes, exceptions can be handled using try-catch blocks., Errors
may occur during execution, not during query construction., When querying external
data sources, runtime exceptions may appear., Proper handling prevents application
failure.
Exception handling in LINQ:
+
Use try-catch around enumeration, not query definition., Handle
database and null reference errors carefully., For external systems, validate data
first., Graceful fallback prevents failure.
Explaining complex LINQ to non-technical person:
+
I visualized the query as step-by-step filters and
transformations., Used table diagrams to show input and output., Simplified
technical terms to business meaning., Stakeholders understood purpose without code.
Expression trees in LINQ?
+
Expression trees represent LINQ queries as object models., Used
by LINQ providers like Entity Framework for translating queries into SQL., Allow
dynamic query construction at runtime., Useful in ORM frameworks.
Expression trees?
+
Expression trees represent code as data structures, enabling
dynamic query generation (used in LINQ to Entities).
Filtering in LINQ?
+
Using Where() to return only elements meeting a condition.
Handling exceptions in LINQ queries?
+
Wrap operations in try-catch when working with external data
sources., Validate null values and input data before applying LINQ operators., For
deferred execution, place exception handling where enumeration happens., Logging
errors ensures traceability and debugging.
Anonymous types be used in LINQ?
+
Anonymous types allow selecting custom lightweight objects
without defining classes., Example: select new { Name = x.Name, Age = x.Age }.,
Useful for projections and temporary data shaping., They are read-only.
Grouping be achieved in LINQ?
+
Grouping is done using the group … by keyword or GroupBy()
method., The result is a collection of grouped key-value pairs., It allows
aggregation operations on grouped sets., Useful for reporting and classification
tasks.
Grouping be achieved using LINQ?
+
Use the group by clause in query syntax or GroupBy() in method
syntax., Groups items based on keys (like category or date)., Each group contains
key and collection items., Common in reporting and analytics.
LINQ impact performance?
+
Poorly structured queries may generate inefficient SQL.,
Deferred execution may repeat processing if misused., Using projections, indexing,
and caching improves efficiency., Profiling tools help identify bottlenecks.
LINQ queries impact performance?
+
LINQ can improve readability but may generate inefficient SQL
if not optimized., Deferred execution may cause unintended multiple calls to the
database., Improper use of Select, joins, and projections can affect performance.,
Using profiling and compiled queries helps optimize performance.
LINQ work with different databases?
+
Through ORM frameworks like Entity Framework or LINQ to SQL.,
LINQ is translated to SQL by providers., Abstracts database-specific syntax.
Joins work in LINQ?
+
LINQ joins combine sequences based on matching keys., Syntax is
similar to SQL joins., Both inner and outer joins can be created., Useful for
relational data scenarios.
Deferred execution work in LINQ?
+
LINQ evaluates a query only when enumerated, not when defined.,
This allows modifying the data source before execution., It reduces memory usage by
delaying computation until needed., Methods like Where() use deferred execution.
Deferred execution work?
+
Deferred execution delays query execution until results are
used., It improves performance by avoiding unnecessary queries., Works with
operators like where, select., Collection is queried only when iterated.
LINQ handle aggregation operations?
+
LINQ provides built-in aggregate methods like Count, Sum, Min,
Max, and Average., It processes data collections and calculates aggregated values
efficiently., Custom aggregations can be done using Aggregate() method., Works on
in-memory and queryable data sources.
Is it possible to execute stored procedures using LINQ?
+
Yes, LINQ to SQL and Entity Framework support stored procedure
execution., They can be mapped and called like functions., This is useful for
performance-critical or legacy systems., Supports input/output parameters.
Lambda expression in LINQ?
+
A lambda expression is an anonymous function used to create
inline expressions for queries and methods.
Lambda expressions in LINQ?
+
Lambda expressions represent inline functions used inside LINQ
queries., They allow concise filtering, mapping, and transformation operations.,
Example: x => x.Age > 25., They replace verbose delegate syntax.
Lambda Expressions?
+
Lambda expressions are short inline functions., Example: x => x
* 2., They make LINQ queries concise and expressive., Used heavily in LINQ method
syntax.
Lifecycle of a LINQ to SQL query
+
Query is written and stored as an expression tree., Execution
is deferred until enumeration., The provider translates it to SQL and sends it to
the database., Results are materialized into objects and returned.
Lifecycle of a LINQ to SQL query?
+
Query is written and mapped to database tables., Deferred
execution ensures query is not executed until iterated., SQL is generated and sent
to the database., Results are materialized into .NET objects.
LINQ and why is it important?
+
LINQ (Language Integrated Query) provides a unified way to
query data in C#., It works with collections, XML, SQL, and APIs., Improves
readability, maintainability, and reduces boilerplate code., It’s widely used in
modern applications for data manipulation.
LINQ and why is it required?
+
LINQ provides a query language within .NET to work with
in-memory objects, databases, XML, and more., It improves productivity by reducing
repetitive query logic., It offers compile-time syntax checking and IntelliSense
support., It makes data access consistent across different sources.
LINQ query expressions?
+
They are syntactic sugar that allow SQL-like structure for
queries., Expressions get translated into standard query operators., They improve
readability for filtering and projections., Both query and method syntax produce the
same result.
LINQ vs Stored Procedures?
+
Stored Procedures run on the database server., LINQ is compiled
in .NET code., LINQ improves readability, but SPs provide better performance and
security., SPs are more suitable for heavy DB operations.
LINQ, and why is it important in modern application
development?
+
LINQ (Language Integrated Query) provides a unified way to
query data using C#., It works across collections, databases, XML, and external
sources., It improves readability, reduces boilerplate code, and ensures
compile-time type safety., LINQ helps developers write cleaner and more maintainable
code.
Parallel LINQ (PLINQ)?
+
PLINQ allows parallel execution of LINQ queries for improved
performance on multi-core processors.
PLINQ and when should it be used?
+
PLINQ (Parallel LINQ) executes LINQ queries in parallel using
multiple processor cores., It improves performance for CPU-bound and large dataset
operations., It should be used when order is not important and operations are
independent., Not ideal for small collections due to overhead.
Purpose of LINQ providers?
+
Providers translate LINQ queries into the correct backend
language., Examples include SQL providers, XML providers, and in-memory providers.,
This enables LINQ to work with multiple data formats., They act as abstraction
layers.
Query syntax vs Method syntax?
+
Query syntax looks like SQL., Method syntax uses extension
methods (Where(), Select())., Both produce the same result, and can be used
together.
Role of DataContext in LINQ?
+
DataContext manages database connections and maps classes to
database tables., It tracks changes to objects and performs CRUD operations., It
acts like a bridge between LINQ queries and the database., Used mostly in LINQ to
SQL.
Standard Query Operators in LINQ?
+
They are predefined methods like Where(), Select(), OrderBy(),
GroupBy()., They allow filtering, projecting, sorting, and grouping., Work with both
query and method syntax.
Team collaboration example (short):
+
Worked with developers to define common LINQ patterns., Created
reusable helper methods and documentation., Reviewed code to ensure consistency and
efficiency., Improved maintainability across system.
Tell me about a time you explained a complex LINQ query to a
non-technical person.
+
I simplified the logic by using a flow diagram showing
filtering, sorting, and grouping., Instead of code, I explained the steps as
operations on a list., This helped stakeholders understand the purpose without
technical depth., The explanation improved communication and decision-making.
Troubleshooting multiple slow LINQ queries?
+
Start by analyzing SQL output using profiling tools or logs.,
Optimize expressions by reducing nested loops and using projections., Use IQueryable
wisely to offload work to the database., Caching results and compiled queries can
significantly improve execution.
Troubleshooting performance bottlenecks:
+
I would profile slow queries, check SQL translation, reduce
repeated enumeration, add indexing., Replace inefficient operators and apply
projection early., Use compiled queries and caching when needed., Parallelization or
raw SQL may help.
Types of LINQ in .NET?
+
Common types include:, LINQ to Objects, LINQ to SQL, LINQ to
XML, LINQ to Entities, Each targets a different data source
Types of LINQ?
+
LINQ to Objects: Query in-memory collections, LINQ to SQL:
Query SQL Server tables, LINQ to XML: Query XML documents, LINQ to Entities: Query
EF entities
Using LINQ with different databases?
+
LINQ providers like LINQ-to-SQL or Entity Framework enable
database querying., Queries translate into SQL under the hood., They work with SQL
Server, MySQL, PostgreSQL, and others with supported providers., Cross-platform
support varies by ORM.
LINQ may not be best:
+
performance is critical or query logic is too complex., Bulk
operations or large SQL joins may perform poorly., Use raw SQL or stored procedures
instead., Also not ideal in high-frequency loops.
LINQ not be the best approach?
+
When extreme performance or low-level database tuning is
required., For large batch operations or highly complex stored procedures., Also
when working with streaming real-time data processing., Raw SQL can sometimes
outperform LINQ in these cases.
You prefer raw SQL over LINQ?
+
When performance is critical or complex queries are required.,
Helpful when using stored procedures or database features unavailable in LINQ.,
Useful in reporting, analytics, and huge datasets., LINQ may generate inefficient
SQL sometimes.
Factors influence LINQ performance most?
+
Deferred execution, collection size, provider type (SQL vs
IEnumerable)., Use projections wisely and avoid unnecessary iteration., Use compiled
queries for repeated execution., Efficient indexing also impacts performance.
SELECT appears after FROM in LINQ?
+
LINQ follows C# syntax rules instead of SQL style., Putting
from first makes query expressions consistent with looping logic., It improves
readability and supports IntelliSense.
LINQ (Language Integrated Query)
+
LINQ?
+
LINQ (Language Integrated Query) is a .NET feature that allows
querying data using C# syntax.
LINQ stand for?
+
LINQ stands for Language Integrated Query.
LINQ important?
+
LINQ provides a unified, readable, and type-safe way to query
data.
LINQ required?
+
It reduces boilerplate code and simplifies data querying across
sources.
Types of data can LINQ query?
+
In-memory objects, databases, XML, DataSets, and APIs.
Main advantage of LINQ?
+
Cleaner code with compile-time type checking.
Main components of LINQ?
+
Data source, query, and execution.
LINQ providers?
+
Components that translate LINQ queries to data-source-specific
formats.
Examples of LINQ providers?
+
LINQ to Objects, LINQ to SQL, LINQ to XML, LINQ to Entities.
LINQ query?
+
An expression written using LINQ syntax to retrieve data.
Query syntax in LINQ?
+
SQL-like syntax using from, where, select.
Method syntax in LINQ?
+
Chained extension methods using lambda expressions.
Do query syntax and method syntax behave differently?
+
No, both compile to the same IL code.
Lazy evaluation in LINQ?
+
Execution happens only when data is accessed.
Lambda expression?
+
An inline anonymous function used in LINQ queries.
Does SELECT come after FROM in LINQ?
+
Variables must be declared before usage in C# syntax.
Cohesion: how related functions within a service are; Coupling:
how dependent a service is on others.
Service instance and service type?
+
Instance: running copy; Type: service
definition/implementation.
Shared database and database per service?
+
Shared DB couples services and may cause conflicts; separate DB
ensures service independence but may require eventual consistency.
Stateful and stateless microservices?
+
Stateful maintains session/state; Stateless does not and is
easier to scale.
Stateless and stateful services?
+
Stateless does not store client state; stateful maintains
session data across requests.
Strong consistency and eventual consistency?
+
Strong: immediate; Eventual: delayed consistency across
services.
Synchronous and asynchronous communication?
+
Synchronous waits for response; Asynchronous does not block the
sender and uses messages or events.
Synchronous and asynchronous microservices?
+
Synchronous waits for response; asynchronous uses queues/events
without blocking.
Synchronous API and asynchronous messaging?
+
Synchronous API waits for response; asynchronous messaging is
non-blocking.
Synchronous HTTP and asynchronous messaging?
+
HTTP waits for response; messaging uses queues/events and
processes asynchronously.
Synchronous REST API and asynchronous messaging?
+
Synchronous: client waits for response; asynchronous: service
responds via events or queues later.
Synchronous RPC and asynchronous messaging?
+
RPC waits for response; messaging decouples services and
processes asynchronously.
Tight coupling and loose coupling?
+
Tight coupling: services highly dependent; Loose coupling:
services independent and communicate via contracts.
Vertical and horizontal scaling in microservices?
+
Vertical: add resources to one instance; Horizontal: add more
instances to scale.
Vertical scaling and horizontal scaling?
+
Vertical: add resources to a single server; Horizontal: add
more instances to handle load.
DiffBet API Gateway and Load Balancer?
+
Load balancer distributes traffic to service instances. API
Gateway handles routing, authentication, aggregation, and throttling.
DiffBet API Gateway and Service Mesh?
+
API Gateway manages client-to-service communication. Service
Mesh manages service-to-service communication, often handling traffic, security, and
observability between services.
DiffBet Containers and VMs?
+
VMs virtualize hardware and are heavier. Containers virtualize
OS and are lightweight, fast, and easier to scale.
DiffBet Docker and Kubernetes?
+
Docker is for containerization. Kubernetes orchestrates
containers across clusters for deployment, scaling, and management.
DiffBet Microservices and Serverless?
+
Microservices run in containers/VMs and need infrastructure
management. Serverless abstracts infrastructure; functions run on-demand with
auto-scaling.
DiffBet Microservices and SOA?
+
SOA is enterprise-focused with shared resources and ESB.
Microservices are decentralized, independently deployable, and lightweight.
DiffBet Monolith DB and Microservices DB?
+
Monolith uses a single shared database. Microservices use
independent databases per service to ensure decoupling and autonomy.
DiffBet Stateful and Stateless Microservices?
+
Stateless services do not maintain client state, making scaling
easier. Stateful services store session or transactional data.
DiffBet synchronous and asynchronous microservices?
+
Synchronous calls block and wait for response (REST).
Asynchronous uses events/messages (Kafka, RabbitMQ) for decoupling.
Distributed log?
+
Distributed log records events/messages across services for
audit analytics and replay.
Distributed transaction?
+
A distributed transaction spans multiple services and databases
with atomicity ensured via patterns like Saga.
Drawbacks of Microservices?
+
Complex service management, network latency, distributed
transactions, debugging challenges, and operational overhead are primary challenges.
Eureka or Consul?
+
Eureka (Netflix) and Consul are service discovery tools that
maintain registry of microservices for dynamic lookup and load balancing.
Fallback in Microservices?
+
Fallback provides alternative responses when a service fails.
Feature toggle in microservices?
+
Feature toggle enables/disables features dynamically without
deploying new code.
Handle data consistency in Microservices?
+
Use patterns like Saga, Event Sourcing, or eventual consistency
mechanisms.
Handle logging in Microservices?
+
Centralized logging using ELK Stack (Elasticsearch, Logstash,
Kibana) or Splunk for aggregated logs and analysis.
Handle Service Failure?
+
Use retry policies, circuit breakers, fallbacks, bulkheads, and
proper monitoring to manage failures gracefully.
Handle Versioning in Microservices APIs?
+
Use URI versioning (/v1/service), request header versioning, or
content negotiation to support backward compatibility.
Health check in Microservices?
+
Health check verifies the status of a service allowing
orchestrators to restart or replace failing instances.
Idempotency in Microservices?
+
Idempotent operations produce the same result if executed
multiple times. Ensures reliability in retries and distributed systems.
Idempotent REST API?
+
Repeated calls produce the same result without side effects.
Important for retries in distributed systems.
Implement authentication in Microservices?
+
Centralized auth service (OAuth2, Keycloak) issues tokens (JWT)
verified by each service.
Implement communication between Microservices?
+
Via REST APIs, gRPC, message brokers (Kafka, RabbitMQ), or
event streaming for asynchronous interactions.
JWT and how is it used?
+
JWT (JSON Web Token) is a compact, URL-safe token used for
authentication and authorization between services and clients.
Kubernetes?
+
Kubernetes is a platform for automating container deployment
scaling and operations.
Load Balancing in Microservices?
+
Distributes incoming requests among service instances to ensure
availability, scalability, and efficient resource utilization.
Message queue?
+
Message queue stores and delivers messages asynchronously
between services.
Microservice anti-pattern?
+
Anti-patterns include shared database tight coupling chatty
services and lack of monitoring.
Microservice boundary?
+
Boundary defines the scope and responsibility of a service.
Microservice dashboard?
+
Dashboard visualizes service metrics logs and health status.
Microservice registry?
+
Registry keeps track of service instances and locations for
discovery and routing.
Microservices communicate?
+
They communicate via lightweight protocols like HTTP/REST,
gRPC, or message queues for asynchronous communication.
Microservices Testing Strategy?
+
Unit testing, integration testing, contract testing, end-to-end
testing, and performance testing are required for reliability.
Microservices?
+
Microservices is an architectural style where an application is
composed of small independently deployable services that communicate over APIs.
Monitor Microservices?
+
Use centralized logging, metrics (Prometheus), tracing (Jaeger,
Zipkin), and dashboards (Grafana) to monitor health and performance.
OAuth2 in microservices?
+
OAuth2 is an authorization framework that provides access
tokens for secure API access.
Pod in Kubernetes?
+
Pod is the smallest deployable unit in Kubernetes containing
one or more containers.
Role of a database per service in Microservices?
+
Each microservice can have its own database to ensure loose
coupling and independence.
Role of a message broker?
+
Message brokers (Kafka RabbitMQ) enable asynchronous
communication and decouple producers and consumers.
Role of caching in microservices?
+
Caching improves performance by reducing repeated calls to
services or databases.
Role of Consul or Eureka in Microservices?
+
They provide service discovery registration and health
checking.
Role of containers in Microservices?
+
Containers (Docker) provide isolated environments for each
microservice and simplify deployment and scaling.
Role of DevOps in microservices?
+
DevOps automates CI/CD monitoring scaling and deployments of
microservices.
Role of Docker Compose?
+
Docker Compose defines multi-container services and networks
for development.
Role of Docker in Microservices?
+
Docker containerizes each microservice for consistency,
portability, and scalable deployment.
Role of JWT in microservices?
+
JWT provides stateless authentication and authorization between
services and clients.
Role of load balancing in Microservices?
+
Load balancing distributes incoming requests across service
instances to ensure high availability and scalability.
Role of service mesh?
+
Service mesh manages service-to-service communication with
features like load balancing retries and security.
Role of service monitoring?
+
Monitoring tracks health performance errors and usage of
services.
Saga in Microservices?
+
Saga is a pattern to manage distributed transactions with
compensating actions across multiple services.
Saga orchestrator?
+
Saga orchestrator coordinates steps and compensations in a
distributed transaction.
Saga participant?
+
Saga participant executes local transaction and triggers events
for orchestration.
Saga Pattern?
+
Saga manages distributed transactions by breaking them into a
sequence of local transactions, coordinated using events or orchestrators.
Secure Microservices?
+
Use authentication (OAuth2, JWT), API Gateway security, TLS,
and service-to-service mutual TLS for secure communication.
Service coupling?
+
Service coupling measures how dependent services are on each
other; low coupling is preferred.
Service in Microservices?
+
A service is a self-contained unit that performs a specific
business function and can be deployed independently.
Service Mesh?
+
A dedicated infrastructure layer (Istio, Linkerd) managing
service-to-service communication, security, and observability without changing code.
Sidecar pattern?
+
Sidecar runs auxiliary services alongside the main service
often for logging proxy or monitoring.
Strangler pattern?
+
Strangler pattern incrementally replaces parts of a monolith
with microservices.
Microsoft Azure
+
Types of cloud services does Azure provide?
+
Infrastructure as a Service, Platform as a Service, and
Software as a Service.
Resource Groups used?
+
They simplify deployment, access control, monitoring, and
lifecycle management.
ARM template?
+
A JSON file defining infrastructure and configuration
declaratively.
Azure subscription?
+
A logical billing and access boundary for Azure resources.
Azure region?
+
A geographical area containing one or more Azure datacenters.
Availability Zone?
+
Physically separate datacenters within a region for high
availability.
High availability in Azure?
+
Designing systems to minimize downtime using redundancy and
failover.
Scalability in Azure?
+
Ability to scale resources up or out based on demand.
Elasticity in Azure?
+
Automatic scaling of resources according to workload changes.
Azure Compute Services?
+
Azure Compute Services provide processing power to run
applications and workloads.
Azure Virtual Machine (VM)?
+
Azure VM is an IaaS service that provides scalable virtual
servers.
Azure VMs be used?
+
When full control over OS and infrastructure is required.
Benefits of Azure App Service?
+
Auto-scaling, built-in security, CI/CD integration, and managed
infrastructure.
Azure Functions be used?
+
For short-lived, event-triggered workloads.
Benefits of AKS?
+
Automated scaling, updates, and simplified cluster management.
Difference between VM and App Service?
+
VM offers full control; App Service offers managed hosting.
Difference between App Service and Functions?
+
App Service hosts long-running apps; Functions run event-based
code.
Difference between AKS and App Service?
+
AKS manages containers; App Service hosts applications
directly.
Auto-scaling in Azure compute?
+
Automatically adjusting resources based on demand.
Availability zone for compute services?
+
Using physically separate datacenters to improve reliability.
Azure Networking?
+
Azure Networking provides connectivity, security, and traffic
management for Azure resources.
Subnets used?
+
To isolate resources and apply network security controls.
Azure Application Gateway?
+
A Layer 7 load balancer with web application firewall support.
Difference between Load Balancer and Application Gateway?
+
Load Balancer works at Layer 4; Application Gateway works at
Layer 7.
Azure VPN Gateway?
+
A service that connects on-premises networks to Azure via VPN.
Azure DNS?
+
A service for hosting DNS domains using Azure infrastructure.
Peering in Azure VNets?
+
Connecting VNets to enable private communication.
Private endpoint?
+
A private IP address that securely accesses Azure services.
Azure Storage Services?
+
Azure Storage Services provide scalable, durable cloud storage
solutions.
Blob Storage be used?
+
For large amounts of unstructured object data.
Azure File Storage be used?
+
For shared file systems accessible via SMB or NFS.
Queue Storage be used?
+
To decouple application components and enable background
processing.
Table Storage be used?
+
For large-scale structured data with simple queries.
Data redundancy in Azure Storage?
+
Replication of data to ensure durability and availability.
Redundancy options in Azure Storage?
+
LRS, ZRS, GRS, and GZRS.
LRS?
+
Locally Redundant Storage replicates data within a datacenter.
GRS?
+
Geo-Redundant Storage replicates data to a secondary region.
Azure database services?
+
Azure database services provide managed relational and
non-relational databases.
Azure SQL Database be used?
+
For modern cloud applications requiring managed SQL databases.
Data models does Cosmos DB support?
+
Core (SQL), MongoDB, Cassandra, Table, and Gremlin APIs.
Azure Database for MySQL?
+
A managed MySQL database service in Azure.
Azure Database for PostgreSQL?
+
A managed PostgreSQL database service in Azure.
Azure Data Lake Storage?
+
A scalable storage optimized for big data analytics.
Data replication in Azure databases?
+
Copying data across regions for availability and disaster
recovery.
Backup and restore in Azure databases?
+
Automated backup and recovery capabilities provided by Azure.
High availability in Azure databases?
+
Ensuring database uptime through replication and failover.
Azure security?
+
Azure security protects cloud resources using identity,
network, data, and governance controls.
Azure Active Directory (Azure AD)?
+
Azure AD is a cloud-based identity and access management
service.
Authentication in Azure AD?
+
Authentication verifies the identity of users and applications.
Authorization in Azure?
+
Authorization determines what authenticated identities can
access.
Azure RBAC?
+
Role-Based Access Control manages permissions for Azure
resources.
Difference between Azure RBAC and Azure AD roles?
+
RBAC controls resource access, while Azure AD roles manage
directory features.
Managed identity?
+
An automatically managed identity for Azure services to access
resources securely.
Azure Blueprint?
+
A service for defining repeatable governance and compliance
configurations.
Azure Security Center (Defender for Cloud)?
+
A service that monitors security posture and threats.
Network security in Azure?
+
Protecting networks using NSGs, firewalls, and private
endpoints.
Encryption at rest in Azure?
+
Encrypting stored data using Microsoft-managed or
customer-managed keys.
Encryption in transit in Azure?
+
Encrypting data moving across networks using TLS.
Compliance in Azure?
+
Meeting regulatory and organizational standards using built-in
tools.
Monitoring in Azure?
+
Monitoring tracks performance, availability, and health of
Azure resources.
Azure metrics?
+
Numerical performance data such as CPU usage, memory, and
latency.
Azure logs?
+
Detailed records of events and operations in Azure resources.
Log Analytics?
+
A service to query and analyze logs using KQL.
Application Insights?
+
An APM service for monitoring application performance and
failures.
Distributed tracing in Azure?
+
Tracking requests across components using Application Insights.
Azure alerting?
+
Triggering notifications based on metric or log conditions.
Azure dashboard?
+
A customizable view of Azure metrics and resources.
Azure integrate with CI/CD?
+
Through Azure DevOps pipelines and GitHub Actions.
Azure Pipeline?
+
A CI/CD service for building and deploying applications.
Infrastructure as code in Azure?
+
Managing infrastructure using ARM templates, Bicep, or
Terraform.
Continuous monitoring?
+
Ongoing monitoring to detect issues and optimize performance.
Monitoring critical in Azure?
+
It ensures reliability, performance optimization, and faster
incident response.
Azure Resource Groups?
+
Resource Groups are logical containers for resources like VMs,
storage, and databases. They allow unified deployment, management, and access
control.
Azure Active Directory (AAD)?
+
Cloud identity and access management service for authenticating
users, enabling SSO, and securing applications in Azure.
Azure Advisor?
+
Analyzes resource configuration and usage, providing
recommendations for performance, security, reliability, and cost.
Azure API Management?
+
Manages APIs with authentication, rate limiting, caching, and
monitoring. Simplifies publishing APIs to internal or external consumers.
Azure App Service Plan?
+
App Service Plan defines compute resources for hosting App
Service apps.
Azure App Service?
+
Azure App Service is a PaaS offering for hosting web apps,
APIs, and mobile backends. It provides scaling, patching, and integration with
DevOps pipelines.
Azure Arc?
+
Azure Arc extends Azure management to on-premises multi-cloud
and edge environments.
Azure Automation?
+
Automation automates repetitive cloud management tasks using
runbooks and scripts.
Azure Backup vault?
+
Backup vault stores recovery points and backup data securely in
Azure.
Azure Backup?
+
Cloud backup service for VMs, SQL databases, and file shares.
Provides encryption, retention policies, and automated recovery.
Azure Bastion?
+
Managed service for secure RDP/SSH access to VMs without
exposing public IPs. Protects against brute-force attacks.
Azure Blob Storage?
+
Blob storage stores unstructured data like images, videos, and
backups. It supports hot, cool, and archive access tiers for cost optimization.
Azure Blueprints?
+
Enables deployment of repeatable environments with predefined
resources, policies, and templates for governance.
Azure Bot Service?
+
Bot Service provides tools to build connect and deploy
intelligent chatbots.
Azure Cognitive Services?
+
AI APIs for vision, speech, language, and decision-making.
Allows developers to integrate AI capabilities without machine learning expertise.
Azure Confidential Computing?
+
Confidential Computing protects data in use with hardware-based
security features.
Azure Container Registry?
+
Private registry to store, manage, and deploy container images
for Docker and Kubernetes workloads.
Azure Content Delivery Network (CDN)?
+
A global caching service to deliver content with low latency.
Improves performance by serving data from edge locations.
Azure Cosmos DB?
+
A globally distributed, multi-model NoSQL database with low
latency and automatic scaling. Supports SQL, MongoDB, Cassandra APIs.
Azure Cost Analysis?
+
Cost Analysis provides visualization and reporting of Azure
resource usage and costs.
Azure Cost Management?
+
Helps track, allocate, and optimize cloud spending. Provides
budgets, recommendations, and reports for cost efficiency.
Azure Data Factory?
+
ETL/ELT service to orchestrate and automate data movement and
transformation across on-premises and cloud sources.
Azure Data Lake?
+
Data Lake stores large amounts of structured and unstructured
data for analytics and big data workloads.
Azure Databricks?
+
Databricks is an analytics platform for big data and AI
workloads using Apache Spark.
Azure DDoS Protection?
+
Protects Azure applications from distributed denial-of-service
attacks. Offers basic and standard plans with monitoring and mitigation.
Azure DevOps?
+
A suite for CI/CD pipelines, version control, and project
tracking. Supports Agile planning, automated testing, and deployment to Azure.
Azure DevTest Labs?
+
DevTest Labs provides environments to create manage and test
applications efficiently in Azure.
Azure Durable Functions?
+
Durable Functions extend Functions to support long-running
workflows with state persistence.
Azure Event Grid?
+
Event routing service that enables reactive programming and
event-driven architecture. Integrates with Azure Functions and Logic Apps.
Azure Event Hub?
+
Real-time data ingestion service for big data pipelines.
Supports millions of events per second for analytics.
Azure Event Hubs?
+
Event Hubs is a real-time event ingestion service for telemetry
and streaming data.
Azure ExpressRoute?
+
Provides private dedicated connection between on-premises
networks and Azure, bypassing the public internet.
Managed cloud-based firewall to protect resources. Provides
application and network-level filtering, logging, and threat intelligence.
Azure Functions consumption plan?
+
Consumption plan scales resources automatically and charges
only for execution time.
Azure Functions Premium Plan?
+
Plan for serverless functions with VNET integration, unlimited
execution duration, and pre-warmed instances.
Azure Functions?
+
Serverless compute for running event-driven code without
managing infrastructure. Billing is based on execution time and resources used.
Azure Governance?
+
Governance defines policies access controls and compliance
rules to manage Azure resources effectively.
Azure HDInsight?
+
HDInsight is a fully managed cloud Hadoop and Spark service for
big data processing.
Azure Key Metrics Monitoring?
+
Provides dashboards, alerts, and analytics for performance,
usage, and SLA compliance.
Azure Key Vault certificates?
+
Certificates are SSL/TLS or PKI certificates managed within Key
Vault.
Azure Key Vault keys?
+
Keys are cryptographic keys used for encryption signing or key
management.
Azure Key Vault secrets?
+
Secrets are secure strings stored in Key Vault for credentials
passwords or API keys.
Azure Key Vault?
+
Securely stores secrets, keys, and certificates. Integrates
with applications to manage access and encryption safely.
Azure Kubernetes Service (AKS)?
+
Managed Kubernetes service that simplifies container
orchestration, scaling, and updates for microservices and containerized
applications.
Azure Lighthouse?
+
Lighthouse enables service providers to manage multiple
customer tenants securely from a single portal.
Azure Log Analytics?
+
A tool in Azure Monitor that queries and analyzes logs from
multiple resources. Uses Kusto Query Language (KQL).
Azure Logic Apps connector?
+
Connector is a prebuilt integration with external systems SaaS
apps or services used in Logic Apps workflows.
Azure Logic Apps?
+
Visual workflow automation for integrating apps, services, and
data. Supports connectors for SaaS and on-premises systems.
Azure Machine Learning?
+
Platform for building, training, and deploying machine learning
models. Supports Python SDK, automated ML, and MLOps.
Azure Managed Identity?
+
Automatically manages service principal for Azure resources,
simplifying authentication without storing credentials.
Azure Notification Hubs?
+
Notification Hubs provide push notifications to mobile devices
across platforms.
Azure Policy initiative?
+
Policy initiative groups multiple policies for simplified
compliance management.
Azure Policy vs Role-Based Access Control (RBAC)?
+
Policy enforces rules and compliance, RBAC controls access
permissions for users and roles.
Azure Policy?
+
Service to enforce organizational standards and compliance
rules on Azure resources. Policies can deny, audit, or modify resource creation.
Azure Private Link?
+
Provides private connectivity to Azure services from a VNet,
avoiding public internet exposure.
Azure Queue Storage?
+
Queue Storage provides message queuing for communication
between application components.
Azure Recovery Services vault?
+
Recovery Services vault provides disaster recovery and backup
solutions for Azure and on-premises workloads.
Azure Redis Cache?
+
Managed in-memory caching service to improve app performance
and reduce database load.
Azure Reserved Instances?
+
Reserved Instances allow discounted pricing for long-term VM
usage in exchange for upfront commitment.
Azure Resource Locks?
+
Prevents accidental deletion or modification of critical
resources by applying ReadOnly or CanNotDelete locks.
Azure Resource Manager (ARM)?
+
ARM is the deployment and management service in Azure. It
organizes resources in resource groups and provides declarative templates for
automation.
Azure Resource Manager template?
+
ARM template is a JSON file defining infrastructure and
configuration for automated deployments.
Azure Role-Based Access Control (RBAC)?
+
RBAC controls access to Azure resources based on roles assigned
to users or groups.
Azure Scheduler?
+
Scheduler allows scheduling jobs tasks or workflows to run at
specific times.
Azure Security Center?
+
Security Center provides unified security management and
advanced threat protection for Azure resources.
Azure Sentinel?
+
Sentinel is a cloud-native SIEM for intelligent security
analytics and threat detection.
Azure Service Bus?
+
Managed messaging service for decoupled communication between
applications. Supports queues, topics, and publish-subscribe patterns.
Azure Service Fabric?
+
Service Fabric is a distributed systems platform for building
microservices and containers at scale.
Azure Service Health?
+
Monitors Azure service issues affecting your resources and
provides alerts and guidance for mitigations.
Azure Site Recovery?
+
Disaster recovery service that replicates workloads to
secondary regions. Supports failover and business continuity.
Azure Spot VM?
+
Spot VM provides unused Azure capacity at discounted rates with
the possibility of eviction.
Azure SQL Database?
+
A managed relational database service that handles backups,
scaling, and high availability automatically. Supports T-SQL and integrates with
other Azure services.
Azure SQL Managed Instance?
+
Managed Instance is a fully managed SQL Server instance in
Azure with near 100% compatibility with on-prem SQL Server.
Azure Storage Account?
+
A container for all Azure storage services including Blobs,
Files, Queues, and Tables. Provides access keys, redundancy, and encryption.
Azure Storage Encryption?
+
Encryption protects data at rest using Azure-managed or
customer-managed keys.
Azure Synapse Analytics?
+
Analytics service for big data and data warehousing. Integrates
data from multiple sources for reporting and insights.
Azure Table Storage?
+
Table Storage is a NoSQL key-value store for structured data.
Azure Traffic Manager?
+
Traffic Manager is a DNS-based load balancing service for
routing traffic across regions for performance, availability, or disaster recovery.
Azure Trusted Launch?
+
Trusted Launch ensures secure boot and runtime protection for
Azure VMs.
Azure Virtual Desktop?
+
Desktop-as-a-Service solution for running Windows desktops in
the cloud with remote access and secure environment.
Azure Virtual Machine?
+
A VM is a scalable compute resource that runs Windows or Linux
in Azure. Users can control the OS, software, and configurations as needed.
Azure Virtual Network (VNet)?
+
VNet is the private network in Azure, allowing secure
communication between VMs, on-premises systems, and other cloud resources.
Azure Virtual WAN?
+
Virtual WAN is a networking service to connect branch offices
and users globally with a hub-and-spoke topology.
ACR and Docker Hub?
+
ACR is private registry integrated with Azure; Docker Hub is
public/private registry for container images.
Azure AD and on-premises AD?
+
Azure AD is cloud-based and designed for web applications;
on-premises AD is for network resources and Windows domain authentication.
Azure API Management and Logic Apps?
+
API Management: API gateway and analytics; Logic Apps: workflow
automation and integration.
Azure App Service and Azure Functions?
+
App Service hosts web apps APIs and mobile backends; Functions
is a serverless compute service that executes code on-demand.
Azure ARM template and Terraform?
+
ARM template is Azure-specific; Terraform is multi-cloud
infrastructure as code tool.
Azure Container Instances and AKS?
+
ACI provides serverless containers; AKS provides orchestrated
container clusters with Kubernetes.
Azure Cosmos DB and Azure SQL Database?
+
Cosmos DB is NoSQL and horizontally scalable; SQL Database is
relational and vertically scalable.
Azure Data Lake and Blob Storage?
+
Data Lake is optimized for analytics workloads; Blob Storage is
general-purpose object storage.
Azure DevOps and GitHub Actions?
+
Azure DevOps provides pipelines boards repos and artifacts;
GitHub Actions is CI/CD integrated with GitHub repositories.
Azure Front Door and Azure Application Gateway?
+
Front Door is global layer 7 load balancer; Application Gateway
is regional layer 7 load balancer.
Azure Functions and Logic Apps?
+
Functions runs code triggered by events; Logic Apps provides a
visual workflow designer for integrating services without coding.
Azure Load Balancer and Azure Application Gateway?
+
Load Balancer works at layer 4 (TCP/UDP); Application Gateway
works at layer 7 (HTTP/HTTPS) with features like SSL termination and WAF.
Azure SQL Database and SQL Server?
+
Azure SQL Database is fully managed with automated patching
backups and scaling; SQL Server is installed on VMs or on-premises.
Azure VM and Azure App Service?
+
VM: full control over OS and applications; App Service: managed
platform for web apps without managing infrastructure.
Event Hubs and Service Bus?
+
Event Hubs: high-throughput event streaming; Service Bus:
enterprise messaging and queues.
Free
+
Shared and Standard App Service Plans? Plans differ in scaling
options features and pricing.
RBAC and Azure AD roles?
+
RBAC is for Azure resources; Azure AD roles manage
directory-level permissions.
System-assigned and user-assigned managed identity?
+
System-assigned is tied to one resource; user-assigned can be
shared across multiple resources.
VPN Gateway and ExpressRoute?
+
VPN Gateway uses public Internet; ExpressRoute uses private
dedicated connections.
Main types of cloud services in Azure?
+
IaaS (infrastructure as a service), PaaS (platform as a
service), and SaaS (software as a service). Each allows different levels of control
over infrastructure and software deployment.
Microsoft Azure?
+
Azure is a cloud computing platform by Microsoft offering IaaS,
PaaS, and SaaS services. It provides computing, storage, networking, and analytics
capabilities for scalable applications.
Network Security Group (NSG)?
+
NSG contains rules to allow or deny network traffic to Azure
resources.
Resource group in Azure?
+
A resource group is a container that holds related Azure
resources for management and deployment.
Subnet in Azure VNet?
+
Subnet is a range of IP addresses within a VNet used to segment
the network and allocate resources.
Yypes of cloud computing in Azure?
+
Azure provides IaaS (Infrastructure as a Service) PaaS
(Platform as a Service) and SaaS (Software as a Service).
MongoDB
+
Access Control & Authentication
+
Authentication is implemented using SCRAM, LDAP, or x.509
certificates. Role-based access control (RBAC) grants users permissions like read,
readWrite, or admin.
Use replica sets, write concerns, transactions, and validation
rules to maintain consistency.
Full-Text Search
+
MongoDB supports text indexes with features like stemming,
scoring, and language-based stop words using $text queries.
Geospatial Indexes
+
Used for location-based queries like $near, $geoWithin.
Supports 2D and 2D sphere indexing for coordinates and mapping applications.
GridFS?
+
GridFS stores large files by splitting them into chunks. Used
for files exceeding 16MB BSON limit.
Handling Transactions
+
MongoDB supports ACID multi-document transactions since version
4.0. Transactions are used with replica sets or sharded clusters and executed using
session.startTransaction() and commitTransaction().
Hashed Sharding Keys
+
Hashing distributes documents evenly across shards to avoid
hotspots. Useful when values are sequential like IDs or timestamps.
High Availability & Scalability
+
MongoDB uses replication (replica sets) and sharding for
horizontal scaling and redundancy.
MongoDB supports horizontal scaling through sharding where data
is partitioned across multiple servers for high availability and performance.
Import/Export
+
Tools include mongoimport and mongoexport for JSON, CSV, and
BSON formats.
Index
+
Index improves query performance:,
db.users.createIndex({name:1})
Indexes in MongoDB?
+
Indexes improve query performance. Common types: single-field,
compound, text, hashed, and geospatial.
Indexing different in MongoDB vs SQL?
+
MongoDB indexes are created on fields in JSON documents,
support multikey and text indexes. SQL indexes are table-column based.
Insert Data
+
Use:, db.collection.insertOne({name: "John"})
Internal Storage
+
MongoDB stores data in BSON format on disk, allowing rich
structured data and binary types.
Journaling
+
Journaling ensures durability by writing operations to a
journal file before applying to storage. It protects against crashes but slightly
adds write overhead.
Map-Reduce
+
Map-reduce processes large data with map (process) and reduce
(aggregate) stages. Used for complex analytics but now mostly replaced by
aggregation pipeline.
Migrating from RDBMS
+
Identify schema, flatten relationships, choose like embedding
or referencing, migrate using tools like MongoMirror or custom ETL.
MongoDB Atlas vs Self-Hosted
+
MongoDB Atlas is a fully managed cloud database with automated
backups, scaling, monitoring. Self-hosted requires manual setup, maintenance, and
scaling.
MongoDB Atlas?
+
Atlas is a cloud-hosted MongoDB service with automated backup,
scaling, and monitoring.
MongoDB Compass
+
Compass is a GUI tool to visualize, query, index, analyze
schema, and manage data. It helps understand document structure, performance
insights, and index efficiency.
MongoDB transactions?
+
MongoDB supports multi-document ACID transactions in replica
sets and sharded clusters from version 4.0+.
Monitoring & Troubleshooting
+
Use MongoDB Cloud Manager, Atlas Monitoring, Compass, and
commands like db.currentOp() and serverStatus().
ObjectId?
+
ObjectId is a unique identifier for documents, containing
timestamp, machine ID, and counter.
Perform CRUD operations in MongoDB?
+
Use insertOne, insertMany, find, updateOne, updateMany,
deleteOne, and deleteMany methods.
Use proper indexes, avoid full scans, analyze queries with
explain(), and denormalize or restructure schema where needed.
Querying
+
Use find() with filters:, db.users.find({age:{$gt:30}})
Replica Sets
+
Replica sets maintain redundant copies of data for failover and
reliability.
Role of _id
+
_id uniquely identifies each document and acts like a primary
key.
Schema Design in MongoDB
+
MongoDB uses flexible schema design based on application needs.
Use embedding for related data (1-to-few) and referencing for large or shared data.
Proper indexing and avoiding unnecessary nesting helps performance.
Sharding
+
Distributes large datasets across multiple machines using shard
keys.
TTL (Time-To-Live) indexes automatically delete expired
documents after a specified time. They are commonly used for logs, sessions, or
temporary data. TTL works only on Date fields and runs cleanup every 60 seconds.
Upgrade by checking compatibility matrix, backing up data,
rolling update replica nodes, and testing with latest drivers.
WiredTiger vs MMAPv1
+
WiredTiger is MongoDB’s default engine offering compression,
concurrency, and better performance. MMAPv1 is older with limited concurrency and no
compression. WiredTiger is recommended for production.
Write Concern
+
Write Concern defines acknowledgment level required from
MongoDB before confirming a write. It ensures durability and safety.
Node.js
+
Advantages of Node.js?
+
Asynchronous, event-driven, high performance, scalable, uses
JavaScript on both client and server, large ecosystem of npm packages.
Async/await in Node.js?
+
Syntactic sugar over Promises to write asynchronous code in a
synchronous style.
Body-parser in Express?
+
Middleware to parse incoming request bodies in JSON,
URL-encoded, or raw format.
Callback in Node.js?
+
A function passed as an argument to another function to execute
after an asynchronous operation completes.
Cluster module in Node.js?
+
Cluster module allows creating multiple worker processes
sharing the same port to utilize multiple CPU cores.
Clustering in Node.js?
+
Cluster module allows running multiple Node processes to use
multi-core CPU, improving scalability and performance.
Cookie in Node.js?
+
Cookie is data stored in client browser sent with HTTP
requests.
Core modules in Node.js?
+
Built-in modules like fs, http, path, os, events, stream.
CORS in Node.js?
+
Cross-Origin Resource Sharing allows server to control which
domains can access its resources.
__dirname and __filename?
+
__dirname returns the directory of the current module;
__filename returns the full path of the current module.
App.listen() and server.listen()?
+
app.listen() is shorthand for creating HTTP server and
listening; server.listen() is low-level HTTP server.
App.use() and app.get() in Express?
+
app.use() applies middleware to all requests; app.get() handles
HTTP GET requests to specific path.
App.use() and router.use() in Express?
+
app.use() applies middleware globally; router.use() applies
middleware to specific router.
SOLID is a set of five design principles for maintainable
object-oriented software.
SOLID stand for?
+
Single Responsibility, Open-Closed, Liskov Substitution,
Interface Segregation, Dependency Inversion.
Single Responsibility Principle (SRP)?
+
A class should have only one reason to change.
SRP important?
+
It improves readability, testability, and maintainability.
Open-Closed Principle (OCP)?
+
Software entities should be open for extension but closed for
modification.
OCP achieved?
+
Using abstraction, inheritance, and polymorphism.
Liskov Substitution Principle (LSP)?
+
Derived classes must be substitutable for their base classes.
Happens when LSP is violated?
+
Unexpected behavior and runtime errors occur.
Interface Segregation Principle (ISP)?
+
Clients should not be forced to depend on unused interfaces.
ISP important?
+
It avoids bloated interfaces and unnecessary dependencies.
Dependency Inversion Principle (DIP)?
+
High-level modules should depend on abstractions, not concrete
classes.
DIP reduce coupling?
+
By introducing interfaces between components.
Design best practices?
+
Guidelines to write clean, reusable, and maintainable code.
DRY principle?
+
Don’t Repeat Yourself avoids code duplication.
KISS principle?
+
Keep It Simple, Stupid promotes simplicity.
YAGNI principle?
+
You Aren’t Gonna Need It avoids premature optimization.
Separation of concerns?
+
Dividing a program into distinct responsibilities.
Code refactoring?
+
Improving code structure without changing behavior.
Design smell?
+
Indicators of poor design choices.
SOLID principles important?
+
They make systems scalable, flexible, and maintainable.
Design patterns important?
+
They provide proven solutions and improve code quality.
Main categories of design patterns?
+
Creational, Structural, and Behavioral patterns.
Abstract Factory pattern?
+
Creates families of related objects without specifying concrete
classes.
Builder pattern?
+
Constructs complex objects step by step.
Real-world OOP scenario?
+
Modeling real entities like User, Order, or Payment as objects.
OOP used in real-world systems?
+
It models real-world relationships naturally.
OOP pitfall?
+
A common mistake in object-oriented design.
Over-engineering?
+
Adding unnecessary complexity and abstractions.
Tight coupling pitfall?
+
Classes being overly dependent on each other.
Improper inheritance pitfall?
+
Using inheritance where composition is better.
Best practice to avoid OOP pitfalls?
+
Follow SOLID principles and prefer composition.
Abstract class must have only abstract methods — True/False?
+
False — it can include concrete, static, and abstract methods.
Abstract Class?
+
An abstract class cannot be instantiated and may include
abstract and non-abstract members.
Abstract method?
+
Method without implementation.
Abstraction?
+
Abstraction focuses on essential features while hiding
unnecessary details using abstract classes or interfaces.
Access modifiers?
+
Keywords like public, private, protected, internal controlling
access to members.
Access Specifiers?
+
Access specifiers define the accessibility of classes and
members: public, private, protected, internal, protected internal, private
protected.
Accessors?
+
Accessors are get and set blocks of a property used to read or
modify data. get returns the value, set assigns it.
Adapter pattern?
+
Converts interface of a class to another interface.
Aggregation?
+
Weak relationship; child can exist without parent.
Are private members inherited?
+
Private members are inherited but cannot be accessed directly
by derived classes.
Base keyword?
+
base is used to access base class members and constructors from
the derived class.
Benefits of Design Patterns:
+
Improve maintainability, reusability, scalability, and
readability.
Benefits of Three-Tier Architecture?
+
It improves scalability, separation of concerns,
maintainability, and allows independent updates to layers (UI, Business, Data).
Call base class constructor?
+
Use the : base() keyword in the derived constructor:, public
Child() : base() { }
Can “this” be used in static method?
+
No, because static methods do not belong to an object.
Can a method return multiple values?
+
Yes, using out parameters, tuples, or classes.
Can Abstract class be sealed?
+
No, because sealed prevents inheritance, while abstract
requires inheritance.
Can abstract classes have Constructors?
+
Yes, abstract classes can have constructors to initialize base
data.
Can abstract classes have static methods?
+
Yes, abstract classes may contain static methods.
Can abstract methods be private?
+
No, because private methods cannot be overridden.
Can object creation be restricted?
+
Yes, by using private constructors or factory patterns.
Can you create an object of a class with a private
constructor?
+
No, you cannot create its object from outside the class.
However, you can create it from inside the same class.
Can you inherit Enum in C#?
+
No, enums cannot inherit or be inherited.
Can you serialize Hashtable?
+
Yes, Hashtable can be serialized but only if the objects stored
inside it are serializable. It uses the [Serializable] attribute to participate in
serialization.
Cass inheritance?
+
Class inherits fields/methods.
Catch multiple exceptions at once?
+
C# allows multiple exceptions in a single catch using:, catch
(Exception ex) when (ex is ArgumentException || ex is NullReferenceException)
Class diagram?
+
Diagram showing classes and their relationships.
Class?
+
Blueprint for creating objects.
Cohesion?
+
How related the responsibilities of a class are.
Command pattern?
+
Encapsulates a request as an object.
Compile-time polymorphism?
+
Method overloading determined at compile time.
Composition?
+
Strong ownership between objects; parent controls child
lifecycle.
Concrete method?
+
Method with implementation.
Constant object?
+
Object whose state cannot change.
Constant?
+
A value assigned at compile-time and cannot be changed.
Constructor Chaining?
+
Calling one constructor from another in the same class using
this()or from base class using base(). It reduces code duplication.
Constructor injection?
+
Dependencies passed through constructor.
Constructor overloading?
+
Defining multiple constructors with different parameters.
Constructor?
+
A constructor is a special method invoked automatically when an
object is created. It initializes class members and has the same name as the class.
It does not return a value.
Copy constructor?
+
Constructor that creates an object by copying another object.
Decorator pattern?
+
Adds responsibilities dynamically.
Dependency inversion principle?
+
High-level modules depend on abstractions, not concrete types.
Describe Abstract class:
+
It provides partial implementation and defines a blueprint for
derived classes. It may have fields, constructors, and methods.
Design Pattern?
+
Reusable solution to common programming problems.
Destructor?
+
A destructor cleans up unmanaged resources before an object is
removed from memory. It is invoked automatically by the Garbage Collector.
Shallow copies references; deep copy duplicates data.
DiffBet Abstraction and Encapsulation:
+
Abstraction hides complexity while showing essential features.
Encapsulation protects data using access modifiers.
DiffBet Static class and Singleton?
+
A static class cannot be instantiated and all members must be
static, while a singleton allows only one instance created using a private
constructor. Singleton supports interfaces and inheritance, static class does not.
Singleton allows lazy loading and object lifecycle control.
DiffBet Struct and Class:
+
Structs are value types, stored in the stack, and do not
support inheritance. Classes are reference types, stored in the heap, and support
inheritance.
DiffBet this and base?
+
this refers to the current class instance, while base refers to
the parent class and is used to access overridden members.
Difference: Design Patterns vs Architectural Patterns?
No, it supports only single inheritance like other classes.
Dynamic binding?
+
Runtime binding of method calls.
Early binding?
+
Compile-time binding.
Encapsulated field?
+
Field private with public getter/setter.
Encapsulation and Data Hiding?
+
Encapsulation bundles data and methods in a class. Data hiding
restricts access using private/protected keywords to protect object integrity and
allow controlled access via properties.
Encapsulation?
+
Encapsulation hides internal implementation and exposes only
needed functionality using access modifiers.
Explain SOLID principles.
+
Five design principles improving OOP software design.
Explicit Interface Implementation?
+
Methods are implemented with interface name and accessed only
via interface reference, not through class object.
Facade pattern?
+
Simplifies complex subsystem with unified interface.
An object whose state cannot change after creation.
Implicit Interface Implementation?
+
The implemented methods remain public and directly accessible
through the class instance.
Inheritance?
+
Inheritance allows a class to reuse or extend another class’s
functionality, enabling code reuse and hierarchy.
Interface Inheritance?
+
Class inherits interface's contract only.
Interface segregation principle?
+
Clients should not depend on unnecessary interfaces.
Interface?
+
An interface contains method signatures without implementation.
Classes must implement its members.
Interface-based programming?
+
Coding to interfaces instead of concrete classes.
Internal access modifier?
+
Accessible within same assembly.
IS-A relationship?
+
Inheritance relationship.
Key points regarding Constructor:
+
Constructors cannot have a return type, run automatically, and
may be overloaded. They are used to initialize objects. If not defined, a default
constructor is provided.
Late binding?
+
Runtime binding.
Loose coupling?
+
Objects interact through interfaces or abstractions.
Low cohesion?
+
Class handles multiple unrelated tasks.
Members allowed in abstract class:
+
Fields, methods, properties, abstract methods, constructors,
and static members.
Memory leak in OOP?
+
Memory not released after object is no longer needed.
Method extension using Interface?
+
Yes, using extension methods defined in static classes.
Method hiding?
+
Using new keyword to hide base member.
Method injection?
+
Dependencies passed as parameters.
Method overloading?
+
Method overloading allows multiple methods with the same name
but different parameters within a class.
Method Overriding?
+
Method overriding allows a derived class to redefine a base
class method with the same signature. It enables runtime polymorphism and dynamic
method binding. The base method must be marked virtual, and the overriding method
must use the override keyword.
Method signature?
+
Parameters and method name.
Multiple inheritance in C#
+
C# does not support multiple inheritance via classes but
supports it through interfaces.
Multiple inheritance?
+
Class inheriting from more than one class (not supported in
C#).
Namespace?
+
Container for classes and types.
Namespaces?
+
Namespaces organize classes, interfaces, and structures
logically. They prevent name conflicts and help maintain large projects.
Nested class?
+
A class defined inside another class.
Object coupling?
+
Degree of interdependence between objects.
Object?
+
An object is an instance of a class representing real-world
data with properties and behaviors.
Observer pattern?
+
Defines dependency between objects for event notification.
OCP (Open Closed Principle)?
+
Classes should be open for extension but closed for
modification.
OOP?
+
Object-Oriented Programming is a paradigm based on objects
containing data and behavior.
Operator Overloading?
+
It allows redefining how operators behave for custom types.
Overloading rules?
+
Same name, different parameters.
Override method?
+
Method that replaces base implementation.
Overriding rules?
+
Same signature, virtual/override modifiers.
Partial Class?
+
Partial class allows a class definition to be split across
multiple files. Useful for auto-generated and developer-written code separation.
Polymorphic behavior?
+
Same method name but different functionalities.
Polymorphic collection?
+
Collection of base type holding objects of derived types.
Polymorphism?
+
Polymorphism allows one interface to behave differently
depending on implementation—through method overloading and overriding.
Private access modifier?
+
Accessible only within the same class.
Private Constructor?
+
A private constructor restricts object creation from outside
the class. It is mostly used in singleton patterns or static-only classes.
Property in C#?
+
A property provides controlled access to class fields. It uses
get and set accessors and supports validation and encapsulation.
Property injection?
+
Dependencies assigned via property.
Protected access modifier?
+
Accessible within class and derived classes.
Protected internal?
+
Accessible in same assembly or derived classes in other
assemblies.
Prototype pattern?
+
Cloning existing objects.
Public access modifier?
+
Accessible everywhere.
Pure virtual function?
+
Abstract method with no implementation (C++).
Readonly?
+
A value assigned at runtime or in constructor and cannot be
modified afterward.
Runtime polymorphism?
+
Method overriding determined at runtime.
Sealed Class?
+
A sealed class prevents inheritance. It is used when extension
or modification is not desired — e.g., String class is sealed.
Sealed Methods and Properties?
+
A sealed method prevents overriding in derived classes. It can
only be used inside an overridden method.
Sequence diagram?
+
Diagram showing object interactions over time.
Singleton pattern?
+
Ensures only one instance of a class exists.
State pattern?
+
Object changes behavior depending on its state.
Static class?
+
A class containing only static members and cannot be
instantiated.
Static polymorphism?
+
Compile-time resolution of overloaded methods.
Static ReadOnly?
+
A value assigned once and remains constant during runtime,
useful for configuration.
Static?
+
Static members belong to the class, not object instances.
Strategy pattern?
+
Encapsulates interchangeable algorithms.
Subclass?
+
Child class that inherits from parent class.
Super class?
+
Parent class from which other classes inherit.
This keyword?
+
Refers to the current object instance.
Tight coupling?
+
Objects are highly dependent on specific implementations.
Types of Design Patterns:
+
Creational, Structural, and Behavioral.
UML?
+
Unified Modeling Language for object-oriented design diagrams.
Use case diagram?
+
Diagram describing interactions between users and system.
Use of a static constructor?
+
A static constructor initializes static data and executes only
once. It runs automatically before any static member is accessed.
Use of IDisposable interface?
+
IDisposable is used to release unmanaged resources like files,
DB connections. It defines the Dispose() method and often works with the using
statement.
Use of private constructor in C#:
+
It is used to prevent instantiation and enforce controlled
object creation. It is common in Singleton and Factory patterns.
Use of yield keyword?
+
yield enables lazy iteration by returning elements one at a
time without storing the full collection. It is used to create iterator blocks using
yield return and yield break.
Virtual method?
+
Method that can be overridden in derived classes.
Virtual, Override, New keywords in C#:
+
virtual: allows a method to be overridden., override: replaces
base class virtual implementation., new: hides base class method without overriding.
And use method overloading?
+
Use overloading for improved readability and flexibility
similar operations require different parameter sets.
Use Abstract Class?
+
Use when shared logic exists but some methods must be
implemented by derived classes.
Abstract class cannot be instantiated?
+
Because it contains incomplete definitions requiring subclass
implementation.
Singleton considered an Anti-pattern?
+
Singleton is often misused and introduces global state which
makes testing and dependency control harder. It leads to tight coupling and can
affect scalability and maintainability.
Use Interfaces in C#?
+
Interfaces support abstraction, loose coupling, and multiple
inheritance. They improve testability and design flexibility.
Payment Gateways
+
3d secure authentication?
+
An extra layer of cardholder authentication during payment
(e.g., OTP) to reduce fraud.
3d secure?
+
3D Secure is an authentication protocol that adds an extra
security layer for online card transactions.
Advanced & best practices
+
Implement versioned webhook endpoints for backward
compatibility., Use async queue workers to handle heavy webhook loads., Test webhook
failures and retries in the sandbox., Validate currency, amount, and order IDs in
payload., Secure API keys and secrets in environment variables., For microservices,
use message queues for webhook events., Reconciliation ensures all payments are
matched with orders., Webhooks can notify external systems (CRM, ERP)., Always log
errors and successes for auditing., Monitor webhooks for missed events to maintain
system integrity.
Authorization hold?
+
Authorization hold temporarily reserves funds on a card before
final settlement.
Avs?
+
Address Verification System (AVS) checks the billing address
against card issuer records to prevent fraud.
Card authentication?
+
Process of verifying cardholder’s identity using CVV OTP or 3D
Secure.
Card bin?
+
Bank Identification Number is the first 6 digits of a card
number identifying the issuing bank.
Card-on-file?
+
Card-on-file stores customer card details securely for future
payments with tokenization.
Chargeback ratio?
+
Chargeback ratio is the percentage of transactions disputed by
customers over total transactions.
Chargeback representment?
+
Merchant disputes a chargeback by providing evidence to reverse
the transaction.
Chargeback?
+
Chargeback occurs when a customer disputes a transaction and
funds are returned to the customer by the bank.
Common webhook & gateway questions
+
Webhooks ensure real-time updates without polling., HMAC or
secret tokens secure payloads., Payment gateway supports multiple methods (cards,
wallets, UPI)., API endpoints require HTTPS and proper error handling., Webhooks
should respond with 200 OK to acknowledge., Retry logic handles network issues., Use
logging for debugging events., Idempotency ensures single transaction updates.,
Refunds are often asynchronous; handled via webhook., Versioning of webhook
endpoints avoids breaking integrations
Contactless payment?
+
Contactless payment allows transactions via NFC or RFID without
inserting the card.
Cross-border payment?
+
Cross-border payment is a transaction between payer and payee
in different countries and currencies.
Cvv?
+
Card Verification Value (CVV) is a security code on cards used
to verify possession.
Delayed capture?
+
Capture performed after authorization typically within a
predefined window.
Diffbet 3d secure 1.0 and 2.0?
+
3D Secure 2.0 improves user experience supports mobile devices
and reduces friction in authentication.
Diffbet a payment gateway and a payment processor?
+
Gateway is the interface for online payments; processor handles
the actual transaction with the bank networks.
Diffbet ach and card payments?
+
ACH is bank-to-bank transfer; card payments are processed
through card networks.
Diffbet aggregator and gateway?
+
Aggregator provides merchant account + gateway; gateway only
processes payments for existing accounts.
Diffbet authorization and capture?
+
Authorization approves the transaction; capture completes the
payment and transfers funds.
Diffbet credit, debit, and net banking transactions?
+
Credit: borrowed funds; Debit: direct from account; Net
banking: online banking transfer. Gateways handle all securely.
Diffbet debit authorization and capture?
+
Debit authorization holds funds; capture deducts funds from
customer account.
Diffbet debit card and credit card transactions?
+
Debit card deducts funds immediately; credit card uses a line
of credit and requires monthly repayment.
Diffbet hosted and api-based payment gateway?
+
Hosted redirects customers to a provider page for payment.
API-based allows payments directly on merchant site while ensuring PCI compliance.
Diffbet hosted and integrated payment gateways?
+
Hosted redirects users to the gateway page; integrated
processes payments within the merchant’s site using API.
Diffbet online and offline payment processing?
+
Online requires real-time authorization; offline may batch and
process later.
Diffbet payment gateway and acquiring bank?
+
Gateway facilitates the transaction; acquiring bank receives
funds on behalf of the merchant.
Diffbet payment gateway and payment facilitator?
+
Gateway processes payments; facilitator onboard merchants and
manage payments under their license.
Diffbet payment gateway and payment processor?
+
Gateway handles the authorization interface for payments.
Processor moves the funds between banks. Gateway is the “front door,” processor is
the “backend.”
Gateway processes card/bank payments; wallet stores funds
digitally for transactions.
Diffbet payment token and card number?
+
Token is a substitute for card number to prevent exposure of
sensitive data.
Diffbet refund and chargeback?
+
Refund is initiated by the merchant; chargeback is initiated by
the customer through the bank.
Diffbet sca and 3d secure?
+
SCA: regulatory requirement; 3D Secure: technical
implementation for customer authentication.
Diffbet void and refund?
+
Void cancels before settlement; refund returns funds after
settlement.
Diffbet white-label and off-the-shelf payment gateway?
+
White-label allows branding by the merchant; off-the-shelf is
standard and prebuilt by the provider.
Does a payment gateway work?
+
It encrypts payment information authorizes transactions through
banks and sends approval or decline responses to the merchant.
Does payment gateway integration work?
+
The customer enters payment info → Gateway encrypts and
forwards → Bank authorizes → Gateway returns status → Server updates order/payment.
Dynamic currency conversion?
+
Dynamic currency conversion allows customers to pay in their
preferred currency with automatic exchange rate calculation.
Emv chip?
+
EMV chip is a secure microprocessor on cards that reduces fraud
compared to magnetic stripe.
Encryption in payment gateways?
+
Encryption protects cardholder data during transmission between
the customer merchant and bank.
End-to-end encryption in payments?
+
Encrypting sensitive payment data from customer entry point to
payment processor.
Fraud detection in payment gateways?
+
Fraud detection identifies suspicious transactions using rules
AI or machine learning.
Fraud prevention tool?
+
Tools or algorithms to detect and prevent unauthorized or
high-risk transactions.
Fraud scoring?
+
Fraud scoring assigns risk scores to transactions based on
patterns to prevent fraud.
Gateway fee?
+
Fee charged by the payment gateway for transaction handling
separate from bank fees.
Gateway response code?
+
Gateway response code indicates transaction success failure or
reason for decline.
Hosted checkout page?
+
A checkout page hosted by the gateway to handle payment
securely without passing card data through merchant servers.
Instant payment notification (ipn)?
+
IPN is a notification sent by the gateway to inform merchant
about payment status in real-time.
Integration & security
+
Always validate payload signature before processing., Store
minimal sensitive information; rely on tokens., Use SSL/TLS for all endpoints.,
Webhook logging aids in troubleshooting failed events., Payment gateway returns
transaction IDs for reconciliation., For refunds, partial or full amounts can be
specified., Implement error handling for invalid payloads., Idempotent endpoints
prevent double-processing., Integrate webhook events into your database or ERP
system., Keep webhook URLs hidden to prevent abuse.
Interchange fee?
+
Fee paid by the acquiring bank to card issuing bank for
processing a transaction.
Live api key?
+
Production credentials used for processing real payments.
Live environment?
+
Live environment is the production system where real
transactions occur.
Major components of a payment gateway?
+
Components include merchant account payment gateway software
payment processor and secure communication protocols.
Merchant account?
+
A merchant account is a bank account that allows businesses to
accept card payments.
Merchant callback url?
+
URL where the gateway sends transaction status updates to
notify the merchant system.
Merchant fee?
+
Fee charged by the payment gateway or acquiring bank for
processing transactions.
Merchant identification number (mid)?
+
MID uniquely identifies a merchant account for processing
transactions.
Merchant onboarding?
+
Process of registering and verifying a merchant with the
payment gateway to start accepting payments.
Merchant portal?
+
Web interface provided by gateways to manage transactions
reports refunds and settlements.
Mobile payment integration?
+
Integration of payment gateways into mobile apps for in-app or
mobile web payments.
Mobile wallet payment?
+
Payment made using a digital wallet app like Apple Pay Google
Pay or PayPal.
Multi-currency support in payment gateways?
+
Ability to accept payments in multiple currencies and handle
conversion automatically.
Online payment fraud?
+
Unauthorized or fraudulent transaction performed online using
stolen or fake card information.
Payment aggregator?
+
Payment aggregator allows multiple merchants to accept payments
under a single merchant account.
Payment gateway api?
+
A payment gateway API allows merchants to integrate payment
processing into their website or application.
Payment gateway response code?
+
Response code indicates success decline or error reason for a
transaction.
Payment gateway sdk?
+
SDK allows integration of gateway features into mobile or web
applications with prebuilt functions.
Payment gateway?
+
A payment gateway is a service that authorizes and processes
online payments securely between merchants, banks, and customers.
Payment link?
+
A secure URL generated by merchants to receive payment from
customers.
Payment reconciliation?
+
Payment reconciliation ensures transactions recorded by the
merchant match bank/gateway records.
Payment token vault?
+
Vault securely stores payment tokens or card details to
simplify recurring payments.
Payment token?
+
Payment token is a secure representation of card or bank
details used for processing without exposing actual data.
Payment transaction lifecycle?
+
Lifecycle includes authorization capture settlement and
potential refund or chargeback.
Payout in payment gateways?
+
Payout transfers money from merchant to vendors suppliers or
customers.
Pci dss compliance?
+
Payment Card Industry Data Security Standard (PCI DSS) ensures
secure handling of cardholder data.
Pci dss level 1?
+
Highest compliance level for merchants processing over 6
million transactions per year.
Pci dss saq?
+
Self-Assessment Questionnaire used by merchants to verify PCI
compliance level.
Pci scope?
+
PCI scope is the environment and systems that handle cardholder
data and need compliance.
Pci tokenization?
+
PCI tokenization replaces sensitive card details with
non-sensitive tokens to minimize PCI scope.
Pci-dss compliance?
+
A set of security standards ensuring safe handling of
cardholder data. Compliance is mandatory for merchants accepting payments.
Real-time payment?
+
Real-time payment is processed immediately and funds are
available instantly.
Recurring billing api?
+
API for managing subscription payments programmatically
including renewals cancellations and updates.
Recurring billing cycle?
+
Recurring billing cycle defines the time interval for
subscription charges (weekly monthly annually).
Recurring billing failure?
+
When an automatic subscription payment fails due to
insufficient funds card expiry or network issues.
Recurring billing model?
+
A billing model that charges customers automatically at
predefined intervals commonly used for subscriptions.
Recurring payment retry?
+
Automatic attempt to process failed recurring payments in
subscription systems.
Recurring payment schedule?
+
Predefined dates and frequency for automatic subscription
payments.
Recurring payment token?
+
Token stored to process subsequent recurring payments without
storing card details.
Recurring payment?
+
Recurring payment is an automatic transaction at regular
intervals for subscriptions or services.
Recurring subscription?
+
A subscription with automatic payments at regular intervals.
Refund api?
+
A refund API allows merchants to initiate refunds
programmatically through the gateway.
Refund policy?
+
Rules defined by merchants to handle partial or full refunds
for transactions.
Risk management in payment gateways?
+
Risk management evaluates transaction risk and prevents
fraudulent or high-risk payments.
Sandbox api key?
+
Test credentials provided to integrate and simulate payments in
a sandbox environment.
Sandbox environment?
+
A test environment provided by payment gateways to simulate
transactions without using real money.
Sca?
+
Strong Customer Authentication (SCA) is a regulatory
requirement in Europe to verify customer identity for online payments.
Settlement batching?
+
Settlement batching groups multiple transactions for processing
at once to reduce costs and simplify reconciliation.
Settlement in payment processing?
+
Settlement is the process where authorized funds are
transferred from the customer's bank to the merchant's account.
Settlement period?
+
Settlement period is the time taken for funds to be transferred
from the customer’s bank to the merchant account.
Settlement reconciliation?
+
Ensuring all settled transactions match with funds received in
merchant account.
Split payment?
+
Split payment distributes a single transaction amount between
multiple parties or accounts.
Ssl/tls in payment gateways?
+
SSL/TLS encrypts communication between the customer and gateway
to secure sensitive information.
Technical questions
+
Payment gateways use JSON or form-encoded requests., Webhooks
payloads include event type and timestamp., Test using sandbox keys and dummy
cards., Webhooks can be signed to verify authenticity., API rate limits must be
handled., Payment gateway errors must be mapped to human-readable messages., Webhook
URLs should not be public., Use retry headers to implement exponential backoff., For
recurring payments, tokenization reduces PCI scope., Implement async processing to
handle high traffic webhook events.
To handle asynchronous payment events?
+
Use Webhooks for real-time notification of events like
successful payment, refunds, or chargebacks.
Token lifecycle management?
+
Managing creation storage expiration and deletion of payment
tokens.
Tokenization in payment gateways?
+
Converts sensitive card details into a secure, unique token for
processing transactions without storing card data.
Velocity check?
+
Velocity check limits transactions based on frequency or volume
to prevent abuse.
Void transaction?
+
Void cancels a transaction before it is settled usually within
the same day.
useReducer is better for complex state logic; useState is
simpler for basic state.
UseRef and createRef?
+
useRef maintains ref across renders in functional components;
createRef creates new ref on each render, used in class components.
UseRef and useState for storing values?
+
useRef stores mutable value without triggering re-render;
useState triggers re-render on change.
DiffBet class and functional components?
+
Class components have lifecycle methods and state. Functional
components use hooks for state and effects, are simpler and more reusable.
DiffBet state and props?
+
Props are immutable and passed by parent. State is mutable and
managed inside the component.
Docker + Node.js:
+
Node apps are containerized for consistent environments.
Error Boundaries:
+
Catch JavaScript errors in child components and display
fallback UI.
Error boundary in React?
+
Error boundaries are components that catch JavaScript errors in
their child components and display fallback UI.
Higher-Order Components (HOC):
+
Functions that take a component and return enhanced component.
Hooks in React?
+
Hooks are functions that let you use state and other React
features in functional components.
JSX in React?
+
JSX is a syntax extension for JavaScript that allows writing
HTML-like code in React components.
JSX?
+
JSX is a syntax extension for JavaScript that looks like HTML.
It allows defining UI in a declarative way inside JS.
Node.js Callback Hell:
+
Nested callbacks; solved using Promises or async/await.
Node.js EventEmitter:
+
Implements events and listeners for async handling.
Node.js Package.json:
+
Manages project dependencies, scripts, and metadata.
Props in React?
+
Props are read-only data passed from parent to child
components. They help in component reusability and dynamic rendering.
PureComponent:
+
Optimizes performance by preventing unnecessary re-renders.
React Fragments:
+
Used to group elements without adding extra nodes to DOM.
React Hooks?
+
Hooks are functions like useState, useEffect that allow
functional components to use state and lifecycle features.
React keys:
+
Unique identifiers for list items to optimize rendering.
React Memo:
+
Prevents re-rendering of functional components if props do not
change
React Profiler:
+
Measures rendering performance of React components.
React Router:
+
Handles navigation between views in a single-page app.
React useEffect:
+
Handles side effects like fetching data or subscriptions in
functional components.
React?
+
React is a JavaScript library for building component-based UI.
Uses virtual DOM for efficient updates and supports single-page applications.
Reconciliation in React?
+
Reconciliation is React's process of updating the DOM
efficiently by diffing the Virtual DOM.
Reducer in Redux?
+
A reducer is a pure function that takes previous state and an
action, returns new state.
Redux in React?
+
Redux is a state management library to manage global
application state in a predictable way.
Redux?
+
Redux is a predictable state container for React apps. It
centralizes app state and provides unidirectional data flow.
State in React?
+
State is local data of a component. Changes to state trigger
re-rendering of the component and its children.
Uncontrolled Components:
+
Form elements manage their own state, accessed via refs.
UseEffect hook in React?
+
useEffect lets you perform side effects like data fetching or
DOM manipulation in functional components.
UseState hook in React?
+
useState allows functional components to have state variables.
Virtual DOM in React?
+
Virtual DOM is an in-memory representation of the real DOM for
fast updates.
Virtual DOM?
+
A lightweight copy of the actual DOM. React updates the virtual
DOM first and then efficiently updates the real DOM using diffing.
WCF Hosting Options:
+
IIS, Self-host, Windows Service, WAS.
WCF Transport Security:
+
Provides message encryption, authentication, and integrity.
WPF Data Binding Modes:
+
OneWay, TwoWay, OneTime, OneWayToSource.
WPF Styles vs Templates:
+
Styles modify appearance; templates define the control
structure.
RESTful APIs
+
Api versioning?
+
API versioning allows changes without breaking existing
clients. Versions may appear in headers, URLs, or query parameters. It helps manage
updates and backward compatibility.
Authentication in rest?
+
Authentication verifies user identity before accessing
protected resources. Methods include OAuth, JWT, and Basic Authentication. It
ensures only authorized users access the API.
Authorization in rest?
+
Authorization determines what resources an authenticated user
can access. it controls permissions and roles. it works after successful
authentication.
Crud?
+
CRUD stands for Create, Read, Update, and Delete. These
operations map to HTTP methods in REST. CRUD is fundamental for resource management
in APIs.
Endpoint?
+
An endpoint is a specific URL where a resource can be accessed.
Each endpoint corresponds to an operation on a resource. It defines how the client
interacts with the server.
Http status code 200?
+
HTTP 200 means the request was successful. It typically
accompanies GET requests. The response usually contains the requested resource.
Http status code 201?
+
201 means a resource has been successfully created. it is
commonly returned after post requests. the response may include the newly created
resource or a location header.
Http status code 404?
+
404 means the requested resource is not found. it indicates an
invalid endpoint or missing data. it is part of rest error handling.
Http status code 500?
+
500 indicates a server error. it means the server failed to
process the request due to an internal issue. it signals the need for debugging and
error handling.
Idempotency?
+
Idempotency means repeated requests produce the same result.
HTTP methods like GET, PUT, and DELETE are idempotent, while POST is not. It
prevents unintended duplicate operations.
J
+
JSON (JavaScript Object Notation) is a lightweight format for
data exchange. It is human-readable and easy for machines to parse. REST APIs
commonly use JSON due to simplicity and speed.
Jwt?
+
JSON Web Token (JWT) is a secure token used for authentication
and authorization. It contains encoded claims digitally signed using a secret or
certificate. The server does not store session state.
Main http methods used in rest?
+
REST commonly uses GET, POST, PUT, PATCH, and DELETE. GET
retrieves data, POST creates, PUT updates fully, PATCH updates partially, and DELETE
removes a resource. These methods align with CRUD operations.
Oauth2?
+
OAuth2 is an authorization framework that allows delegated
access. It enables third-party apps to access APIs securely without sharing
passwords. It is widely used by Google, Facebook, and Microsoft services.
Pagination?
+
Pagination splits large datasets into smaller chunks. REST APIs
use parameters like limit and page to fetch data efficiently. It improves
performance and user experience.
Rate limiting in rest apis?
+
Rate limiting restricts the number of requests allowed within a
time window. It prevents abuse, protects servers, and ensures fair usage. Often
implemented with tokens or throttling rules.
Resource in rest?
+
A resource represents data or an entity exposed via an
endpoint. Each resource is identified by a unique URI. Resources are usually
represented in formats like JSON or XML.
Rest api?
+
A REST API is an architectural style that uses HTTP methods to
perform CRUD operations. It follows stateless communication and represents resources
using URIs. REST relies on representations like JSON or XML. It is widely used for
web and mobile services.
Stateless mean in rest?
+
Stateless means each request contains all necessary information
to process it. The server does not store client session data between requests. This
improves scalability and simplifies server architecture.
Xml in rest?
+
XML is a markup language used for structured data
representation. It was widely used before JSON gained popularity. REST can still
support XML when needed for legacy systems.
Scalable & Maintainable Design Patterns
+
Api throttling?
+
Limits API usage to maintain performance and avoid abuse.
Diffbet monolithic and microservices?
+
Monolith is a single deployable unit; microservices are
independently deployable services focusing on single business capabilities.
Hateoas?
+
Hypermedia as the engine of application state; REST responses
contain links to navigate API dynamically.
Rate limiting?
+
Controls the number of requests a client can make in a time
window to prevent overload.
Retry mechanism?
+
Automatically retries failed operations to handle transient
errors in distributed systems.
Service discovery?
+
Allows services to find each other dynamically in distributed
architecture without hardcoding endpoints.
Solid, ddd, and clean architecture work together?
+
SOLID ensures clean OOP design, DDD aligns domain with business
rules, Clean Architecture isolates layers; together they build scalable,
maintainable, testable solutions.
Swagger ui?
+
Interactive documentation interface for REST APIs, allowing
developers to test endpoints.
Scalable Solution Design
+
Caching in scalable design?
+
Stores frequently accessed data closer to users to reduce
database load and improve performance.
Cqrs?
+
Command Query Responsibility Segregation separates read and
write operations to optimize performance and scalability.
Diffbet synchronous and asynchronous communication?
+
Synchronous waits for response, can block. Asynchronous allows
parallel processing, improving throughput.
Scalable solution design?
+
Designing software that can handle increasing load efficiently
by scaling horizontally (more machines) or vertically (stronger machines).
Stateless vs stateful design?
+
Stateless services don’t store client state, aiding scaling;
stateful services retain state and require careful replication.
To design database for scalability?
+
Use sharding, replication, indexing, and read/write separation
to handle large data volumes efficiently.
To scale microservices?
+
Deploy multiple instances, use service discovery, load
balancing, and container orchestration.
SOLID Principles
+
Benefits of solid principles?
+
Enhances code maintainability, testability, scalability, and
reduces bugs. Supports clean, modular, and extensible architecture.
Diffbet oop and solid?
+
OOP provides structure using objects and classes. SOLID defines
principles for better object-oriented design.
Dip (dependency inversion principle)?
+
High-level modules should not depend on low-level modules; both
should depend on abstractions. Reduces coupling and improves flexibility.
Does srp help testing?
+
By isolating responsibilities, classes are easier to test
individually, enabling simpler unit tests.
Example of dip in c#
+
Use interfaces for dependencies:, public class Service {
private IRepository repo; public Service(IRepository r) { repo = r; } }
Isp (interface segregation principle)?
+
Clients should not be forced to depend on methods they do not
use. Promotes small, specific interfaces rather than large general-purpose ones.
Lsp (liskov substitution principle)?
+
Derived classes should be substitutable for their base classes
without breaking behavior. Supports polymorphism safely.
Ocp (open/closed principle)?
+
Software entities should be open for extension but closed for
modification. Enables adding new features without changing existing code.
Solid?
+
SOLID is a set of five object-oriented design principles (SRP,
OCP, LSP, ISP, DIP) that improve maintainability, flexibility, and scalability of
software.
Srp (single responsibility principle)?
+
A class should have only one reason to change. It focuses on
doing one task well, improving readability and maintainability.
SQL
+
Table in SQL?
+
A table is a collection of rows and columns storing related
data.
Row in SQL?
+
A row represents a single record in a table.
Column in SQL?
+
A column represents a specific attribute of data in a table.
Main types of SQL statements?
+
DDL, DML, DCL, and TCL.
DDL?
+
DDL defines database structure using CREATE, ALTER, and DROP.
DML?
+
DML manipulates data using INSERT, UPDATE, DELETE, and SELECT.
DCL?
+
DCL controls access using GRANT and REVOKE.
TCL?
+
TCL manages transactions using COMMIT and ROLLBACK.
Key in SQL?
+
A key uniquely identifies records in a table.
Can a table have multiple primary keys?
+
No, a table can have only one primary key.
Composite primary key?
+
A primary key made of two or more columns.
Foreign key reference?
+
It references the primary key of another table.
Referential integrity?
+
Ensuring relationships between tables remain consistent.
ON DELETE CASCADE?
+
Automatically deletes child records when parent is deleted.
ON UPDATE CASCADE?
+
Automatically updates foreign key values when primary key
changes.
Can a table have multiple unique keys?
+
Yes, a table can have multiple unique constraints.
Difference between primary key and unique key?
+
Primary key cannot be NULL; unique key can allow NULL.
Check constraint?
+
Ensures column values meet a specific condition.
NOT NULL constraint?
+
Prevents NULL values in a column.
Default constraint?
+
Assigns a default value when none is provided.
SELECT * used for?
+
It retrieves all columns from a table.
Clause?
+
filters rows based on specified conditions.
Operators are used in WHERE clause?
+
Comparison, logical, BETWEEN, IN, LIKE, and IS NULL.
ORDER BY used for?
+
ORDER BY sorts query results in ascending or descending order.
Default sort order in ORDER BY?
+
Ascending order.
GROUP BY?
+
GROUP BY groups rows having the same values.
GROUP BY used?
+
To apply aggregate functions on grouped data.
Aggregate functions in SQL?
+
COUNT, SUM, AVG, MIN, and MAX.
HAVING clause?
+
HAVING filters grouped records after aggregation.
Difference between WHERE and HAVING?
+
WHERE filters rows; HAVING filters groups.
Can HAVING be used without GROUP BY?
+
Yes, but it applies to the entire result set.
DISTINCT keyword?
+
DISTINCT removes duplicate rows from results.
LIMIT clause?
+
LIMIT restricts the number of rows returned.
OFFSET clause?
+
OFFSET skips a specified number of rows.
SQL JOIN?
+
A JOIN combines rows from two or more tables based on a related
column.
INNER JOIN?
+
INNER JOIN returns only matching rows from both tables.
LEFT JOIN?
+
LEFT JOIN returns all rows from the left table and matching
rows from the right table.
RIGHT JOIN?
+
RIGHT JOIN returns all rows from the right table and matching
rows from the left table.
FULL JOIN?
+
FULL JOIN returns all rows when there is a match in either
table.
SELF JOIN?
+
SELF JOIN joins a table with itself using aliases.
Difference between INNER JOIN and LEFT JOIN?
+
INNER JOIN returns only matches; LEFT JOIN returns all left
table rows.
LEFT JOIN be used?
+
When all records from the left table must be included.
CROSS JOIN?
+
CROSS JOIN returns the Cartesian product of two tables.
Default JOIN type?
+
INNER JOIN is the default JOIN type.
JOIN condition?
+
A condition that specifies how tables are related.
Can multiple JOINs be used in one query?
+
Yes, multiple JOINs can be chained in a single query.
Happens if JOIN condition is missing?
+
It results in a Cartesian product.
Equi join?
+
A JOIN using equality condition between columns.
Non-equi join?
+
A JOIN using non-equality conditions.
Subquery in SQL?
+
A subquery is a query nested inside another SQL query.
Subqueries be used?
+
In SELECT, WHERE, FROM, and HAVING clauses.
Scalar subquery?
+
A subquery that returns a single value.
Correlated subquery?
+
A subquery that depends on values from the outer query.
Difference between correlated and non-correlated subquery?
+
Correlated subquery executes per row; non-correlated executes
once.
IN operator with subquery?
+
IN checks if a value exists in subquery results.
EXISTS in subquery?
+
EXISTS checks whether a subquery returns any rows.
Difference between IN and EXISTS?
+
IN compares values; EXISTS checks row existence.
Common Table Expression (CTE)?
+
A temporary named result set defined using WITH clause.
CTEs used?
+
To improve readability and simplify complex queries.
Recursive CTE?
+
A CTE that references itself for hierarchical data.
SQL View?
+
A virtual table based on a stored SELECT query.
Views used?
+
To simplify queries and enhance security.
Difference between view and table?
+
View stores query definition; table stores actual data.
Materialized view?
+
A view that stores query results physically.
An index work?
+
It creates a data structure that allows quick lookup of rows.
Types of indexes?
+
Clustered, non-clustered, unique, and composite indexes.
Composite index?
+
An index created on multiple columns.
Index scanning vs index seeking?
+
Seek directly locates data; scan reads the entire index.
Causes slow SQL queries?
+
Missing indexes, large data scans, and inefficient joins.
Indexes be avoided?
+
On frequently updated columns due to overhead.
Transaction control statements?
+
BEGIN, COMMIT, ROLLBACK, and SAVEPOINT.
COMMIT do?
+
COMMIT permanently saves transaction changes.
ROLLBACK do?
+
ROLLBACK reverts changes made during a transaction.
SAVEPOINT?
+
SAVEPOINT allows partial rollback within a transaction.
ACID property?
+
ACID ensures reliable database transactions.
Atomicity?
+
Atomicity ensures all operations in a transaction complete or
none do.
Consistency?
+
Consistency ensures data integrity rules are maintained.
Isolation?
+
Isolation ensures concurrent transactions do not interfere.
Durability?
+
Durability ensures committed data persists after failures.
Concurrency in SQL?
+
Concurrency allows multiple transactions to execute
simultaneously.
Concurrency problems?
+
Dirty reads, non-repeatable reads, and phantom reads.
Aggregate: Operate on multiple rows (SUM, AVG, COUNT)., Scalar:
Operate on single value, return single result (UPPER, ROUND).
Alias command
+
Alias is a temporary name for a table or column in a query.,
Example: SELECT emp_name AS Name FROM Employees., Helps in readability and
formatting.
Alias in SQL
+
An alias is a temporary name for a table or column., Example:
SELECT emp_name AS Name FROM Employee;, Used to simplify queries and improve
readability.
Architecture of PostgreSQL
+
Client-server architecture:, Client: Sends SQL queries.,
Server: Processes requests, manages storage, handles transactions., Includes
background processes for WAL, vacuuming, and replication.
Auto Increment?
+
Auto Increment automatically generates a unique numeric value
for a column., Commonly used for primary keys., Example in SQL: ID INT
AUTO_INCREMENT PRIMARY KEY.
Backup of a PostgreSQL database
+
Use pg_dump for logical backup: pg_dump dbname > backup.sql.,
For full cluster backup, use pg_basebackup., Backups can be restored using psql or
pg_restore.
Capacity of a table in PostgreSQL
+
Theoretically, a table can store unlimited rows, limited by
disk space., Maximum table size is 32 TB per table in practice (depends on system).
Case-insensitive searches using regex in PostgreSQL
+
Use the ~* operator instead of ~., Example: SELECT * FROM table
WHERE column ~* 'pattern';, This matches text regardless of case.
Change the datatype of a column
+
ALTER TABLE table_name ALTER COLUMN column_name TYPE
new_datatype;, Used to modify existing column data types safely.
Check rows affected in previous transactions
+
Use the SQL command GET DIAGNOSTICS variable = ROW_COUNT; after
executing a DML statement., It returns the number of rows affected by the last
INSERT, UPDATE, or DELETE., Useful for transaction auditing and validation.
Clause
+
A Clause is a component of SQL statement that performs a
specific task., Examples: SELECT, WHERE, ORDER BY, GROUP BY.
Collation
+
Collation defines rules for storing, comparing, and sorting
strings in a database., It handles case sensitivity, accent sensitivity, and
character set.
Collation? Types of Collation Sensitivity
+
Collation defines rules for sorting and comparing text., Types
of sensitivity:, Case-sensitive (CS), Accent-sensitive (AS), Kana-sensitive (KS),
Width-sensitive (WS)
Command enable-debug
+
enable-debug is used to turn on debugging mode in PostgreSQL or
related tools., It logs detailed information about query execution and server
operations., Useful for troubleshooting and performance tuning., It should be
disabled in production for security and performance reasons.
Command to create a database in PostgreSQL
+
CREATE DATABASE dbname;, Creates a new database with default
settings.
Command to fetch first 5 characters of a string
+
Use the LEFT() function:, SELECT LEFT(column_name, 5) FROM
table_name;, It extracts the first 5 characters from the specified column.
Common clauses used with SELECT query in SQL
+
SELECT retrieves data from tables. Common clauses:, WHERE
(filter rows), GROUP BY (aggregate data), ORDER BY (sort results), HAVING (filter
aggregated data)
Composite key in SQL?
+
A composite key is a primary key made up of two or more
columns.
Constraint?
+
Constraints enforce rules on table columns to maintain data
integrity., Examples: PRIMARY KEY, FOREIGN KEY, UNIQUE, CHECK, NOT NULL., Prevents
invalid data entry into the table.
Constraints in SQL?
+
Constraints enforce rules on table columns., Examples: PRIMARY
KEY, FOREIGN KEY, UNIQUE, NOT NULL, CHECK., Used to maintain data integrity.
Create an empty table from an existing table
+
Use: SELECT * INTO NewTable FROM ExistingTable WHERE 1=0;,
Copies the structure but no data.
Create empty tables with the same structure as another table?
+
Use:, CREATE TABLE new_table AS SELECT * FROM existing_table
WHERE 1=0;, It copies the structure but not the data.
Cross join in SQL?
+
A cross join returns Cartesian product of two tables.
Cross-Join
+
Cross-Join returns Cartesian product of two tables., Every row
from the first table combines with every row from the second., Used when all
combinations are needed.
Cross-Join?
+
Returns Cartesian product of two tables., All rows from Table A
are combined with all rows from Table B., No join condition is used.
Cursor and its usage
+
A cursor allows row-by-row processing of query results., Used
in stored procedures for iterative operations., Steps: DECLARE cursor, OPEN cursor,
FETCH row, CLOSE cursor.
Cursor in SQL?
+
A cursor allows row-by-row processing of query result.
Cursor?
+
A cursor allows row-by-row processing of query results., Useful
for operations that cannot be done in a single SQL statement., Types include
Forward-Only, Static, Dynamic, and Keyset-driven cursors.
Data Integrity?
+
Ensures accuracy, consistency, and reliability of data in a
database., Enforced using constraints like PRIMARY KEY, FOREIGN KEY, UNIQUE, and
CHECK., Prevents invalid or duplicate data entry.
Data Warehouse
+
A Data Warehouse is a central repository for integrated data
from multiple sources., Used for reporting, analysis, and decision-making., Data is
structured, cleaned, and optimized for querying.
Database?
+
A database is a structured collection of data stored
electronically., Supports easy access, manipulation, and management of data., Used
to store information for applications.
DBMS?
+
DBMS is software for storing, retrieving, and managing data.,
Examples: MS Access, Oracle, MySQL., Provides basic CRUD operations but may lack
advanced relational features.
Deadlock in SQL?
+
A deadlock occurs when two or more transactions block each
other, waiting for resources.
Define Indexes in PostgreSQL
+
Indexes improve query performance., CREATE INDEX idx_name ON
table_name(column_name);, Supports B-tree, Hash, GIN, GiST types.
Define sequence
+
A sequence generates unique numeric values automatically., Used
for primary keys or auto-increment fields., Example: CREATE SEQUENCE seq_name START
1;
Define tokens in PostgreSQL
+
Tokens are basic language elements: keywords, identifiers,
literals, operators., Used by the parser to understand SQL statements.
Delete a database in PostgreSQL
+
DROP DATABASE dbname;, Removes the database and all its
contents permanently.
Denormalization
+
Process of combining tables to improve query performance., It
may introduce redundancy but speeds up read-heavy operations., Used when
normalization causes too many joins.
Denormalization in SQL?
+
Denormalization combines tables or adds redundant data for
performance improvement.
Candidate key and alternate key?
+
Candidate key is a potential primary key; alternate key is a
candidate key not selected as primary.
Composite key and a compound key?
+
Composite key is primary key with multiple columns; compound
key usually refers to multiple foreign keys together.
Database and schema?
+
Database is a container of schemas and data; schema is a
namespace inside the database.
Natural key and surrogate key?
+
Natural key is derived from business data; surrogate key is
system-generated unique identifier.
Primary key and candidate key?
+
Primary key uniquely identifies rows; candidate key is a column
that can be a primary key but is not chosen.
Primary key and unique constraint?
+
Primary key cannot be NULL and uniquely identifies rows; unique
constraint ensures uniqueness but can have one NULL.
Temporary table and a table variable?
+
Temporary table persists for the session or procedure; table
variable is limited to scope and memory.
Temporary table and permanent table?
+
Temporary table exists for session/procedure; permanent table
persists in database.
AFTER and INSTEAD OF trigger?
+
AFTER trigger executes after the event; INSTEAD OF trigger
executes instead of the event.
VARCHAR is for smaller strings with length limit; TEXT stores
large variable-length strings.
WHERE and HAVING?
+
WHERE filters rows before aggregation; HAVING filters groups
after aggregation.
DiffBet Cluster and Non-Cluster Index
+
Clustered Index: Sorts and stores the actual data rows based on
key values; only one per table., Non-Clustered Index: Creates a separate structure
pointing to data rows; multiple per table., Clustered is faster for range queries;
Non-clustered is good for quick lookups.
DiffBet Clustered and Non-clustered index
+
Clustered index: Sorts and stores data physically in the
table., Non-clustered index: Separate structure pointing to table rows., Clustered =
1 per table; Non-clustered = multiple per table.
DiffBet Commit and Checkpoint
+
Commit: Saves changes of a transaction permanently to the
database., Checkpoint: Forces all changes from WAL to be flushed to disk., Commit is
transaction-specific, checkpoint is system-level for durability.
DiffBet DELETE and TRUNCATE
+
DELETE: Row-by-row deletion, can use WHERE, slower., TRUNCATE:
Deletes all rows, resets identity, faster, cannot use WHERE.
DiffBet DROP and TRUNCATE
+
DROP: Removes table structure permanently., TRUNCATE: Removes
all data but keeps structure intact.
DiffBet SQL and MySQL
+
SQL: Language used for querying databases., MySQL: Database
management system using SQL language., SQL is standard; MySQL is an implementation.
DiffBet TRUNCATE and DROP
+
TRUNCATE: Deletes all data but keeps table structure., DROP:
Deletes the table and its structure completely., TRUNCATE is faster; DROP is
permanent.
Clustered Index: Sorts and stores data physically in order.,
Non-Clustered Index: Stores pointers to data, not physical order., Unique Index:
Ensures all indexed values are unique., Composite Index: Index on multiple columns.
Different types of Normalization
+
1NF (First Normal Form): No duplicate columns, atomic values.,
2NF (Second Normal Form): 1NF + no partial dependency., 3NF (Third Normal Form): 2NF
+ no transitive dependency., BCNF, 4NF, 5NF: Higher forms for complex dependencies.
Different types of SQL statements?
+
Data Definition Language (DDL), Data Manipulation Language
(DML), Data Control Language (DCL), and Transaction Control Language (TCL).
Disadvantage of DROP TABLE
+
DROP TABLE permanently deletes table structure and all data.,
Cannot be undone unless a backup exists., Caution is needed in production
environments to prevent data loss.
Does PostgreSQL support full-text search?
+
Yes, PostgreSQL has built-in full-text search capabilities., It
uses tsvector and tsquery for indexing and querying text., Supports ranking,
stemming, and language-specific dictionaries.
Entities and Relationships
+
Entity: Object or concept with stored data (e.g., Student).,
Relationship: Association between entities (e.g., Student enrolled in Course)., They
form the basis of ER modeling in databases.
Fetch alternate records from a table
+
Use ROW_NUMBER() with modulo:, SELECT * FROM (, SELECT *,
ROW_NUMBER() OVER (ORDER BY id) AS rn FROM Table1, ) t WHERE rn % 2 = 1;
Fetch common records from two tables
+
Use INNER JOIN or INTERSECT:, SELECT * FROM Table1 INTERSECT
SELECT * FROM Table2;
Foreign key in SQL?
+
A foreign key is a column or set of columns in one table that
refers to the primary key of another table.
Foreign Key?
+
A Foreign Key links a column in one table to the Primary Key of
another table., Ensures referential integrity between tables., Prevents orphan
records.
Forms of Normalization
+
1NF: Remove repeating groups., 2NF: Remove partial
dependencies., 3NF: Remove transitive dependencies., BCNF, 4NF, 5NF: Advanced forms
for complex designs.
Function in SQL?
+
A function is a reusable set of SQL statements that returns a
single value or table.
Importance of TRUNCATE statement
+
Efficiently deletes all rows from a table., Faster than DELETE
because it bypasses row-by-row processing., Resets identity columns and frees
storage space.
Index in SQL?
+
An index is a database object that improves query performance
by allowing faster data retrieval.
Index?
+
An index improves the speed of data retrieval from a table., It
works like an index in a book, pointing to row locations., Reduces query execution
time but may slow inserts/updates.
Index? Different types
+
An index improves query performance by providing fast lookup.,
Types:, Clustered, Non-clustered, Unique, Composite, Full-text
Isolation level in SQL?
+
Isolation level controls how and when the changes made by one
transaction are visible to others.
Join?
+
A join combines rows from two or more tables based on a related
column., It helps retrieve meaningful data spread across multiple tables., Joins use
keys like primary and foreign keys to match records.
Join? Types
+
Join combines rows from two or more tables., Types:, INNER
JOIN, LEFT (OUTER) JOIN, RIGHT (OUTER) JOIN, FULL OUTER JOIN, CROSS JOIN, SELF JOIN
List all databases in PostgreSQL
+
\l -- or \list, Displays all existing databases on the server.
Local and Global Variables and differences
+
Local Variable: Declared inside a procedure or function,
accessible only there., Global Variable: Declared outside, accessible across
procedures., Local variables have limited scope; global variables persist across
sessions.
Multi-Version Concurrency Control (MVCC)
+
MVCC allows multiple transactions to access the database
without locking., Each transaction sees a snapshot of the database., Improves
concurrency, reduces conflicts, and ensures consistency., PostgreSQL & Database
Questions
Normal forms in SQL?
+
1NF, 2NF, 3NF, BCNF, 4NF, 5NF.
Normalization
+
Process of organizing data to reduce redundancy., Ensures data
integrity and avoids anomalies., Involves dividing tables and establishing
relationships using keys.
Normalization in SQL?
+
Normalization is the process of organizing database to reduce
redundancy and improve integrity.
OLTP?
+
Online Transaction Processing (OLTP) handles real-time
transactional operations., Examples: Banking transactions, e-commerce orders., It
focuses on speed, reliability, and consistency.
Online Transaction Processing (OLTP)
+
OLTP systems handle day-to-day transactions like banking or
booking systems., Supports multiple concurrent users with fast query processing.,
Data is normalized for efficiency.
Operator used in query for pattern matching
+
The LIKE operator is used., Example: WHERE column_name LIKE
'A%' matches all values starting with 'A'., Supports % for multiple characters and _
for a single character.
Parallel queries in PostgreSQL
+
Parallel queries use multiple CPU cores to execute a single
query faster., Useful for large datasets and complex aggregations., Controlled via
max_parallel_workers_per_gather and planner settings.
Partitioned tables in PostgreSQL
+
Called partitioned tables, divided into child tables based on
ranges, lists, or hashes., Improves query performance on large datasets.
Pattern Matching in SQL?
+
Pattern matching is used to search data based on specific
patterns., The LIKE operator is commonly used., It helps filter results with partial
matches or wildcard characters.
PostgreSQL?
+
PostgreSQL is an open-source, object-relational database.,
Supports SQL, JSON, and advanced data types., Known for stability, scalability, and
ACID compliance.
Primary key in SQL?
+
A primary key is a column or set of columns that uniquely
identifies each row in a table.
Primary Key?
+
A column (or set of columns) that uniquely identifies each row
in a table., Cannot be NULL and ensures data integrity., Only one primary key
allowed per table.
A query is a request to retrieve or manipulate data from a
database., Written in SQL using SELECT, INSERT, UPDATE, or DELETE., Queries can
include filters, joins, and aggregation.
RDBMS?
+
RDBMS (Relational DBMS) stores data in tables with
relationships., Supports SQL for querying., Enforces constraints like primary key,
foreign key, and unique key., Examples: SQL Server, MySQL, Oracle.
RDBMS? Difference from DBMS
+
RDBMS stores data in tables with relationships., Supports SQL,
keys, constraints, and normalization., DBMS may not support relationships or
constraints.
Recursive Stored Procedure
+
A stored procedure that calls itself directly or indirectly.,
Useful for hierarchical or repetitive tasks like calculating factorial., Needs
proper termination condition to avoid infinite loop.
Recursive Stored Procedure?
+
A stored procedure that calls itself to solve repetitive
tasks., Used in hierarchical or iterative operations., Care must be taken to include
a termination condition.
Relationship and types
+
A relationship defines how tables are linked via keys., Types:,
One-to-One: One row in a table matches one row in another., One-to-Many: One row
matches multiple rows., Many-to-Many: Multiple rows in one table match multiple rows
in another.
Schema in SQL?
+
A schema is a logical collection of database objects like
tables, views, indexes, and procedures.
SELECT statement?
+
SELECT is used to retrieve data from one or more tables.,
Example: SELECT column1, column2 FROM table_name;, It can include filters, joins,
and aggregation.
Select unique records from a table
+
Use DISTINCT keyword:, SELECT DISTINCT column_name FROM
Table1;, Removes duplicate rows from the result set.
Self join in SQL?
+
A self join joins a table to itself using aliases.
Self-Join
+
Self-Join is a join of a table with itself., Useful to compare
rows within the same table., Example: Finding employees and their managers in the
same table.
Self-Join?
+
A table joins with itself., Used to compare rows within the
same table., Requires aliases for clarity.
SQL?
+
SQL (Structured Query Language) is used to manage and
manipulate relational databases., Supports querying, inserting, updating, and
deleting data., Used in DBMS and RDBMS.
Start, restart, and stop PostgreSQL server
+
Start: pg_ctl start or service command., Stop: pg_ctl stop.,
Restart: pg_ctl restart., Commands vary slightly with OS (Linux/Windows).
String constants in PostgreSQL
+
Strings enclosed in single quotes ('text')., Used in queries,
comparisons, and data insertion.
Subquery?
+
A subquery is a query nested inside another query., It can
return a single value or a set of values for the main query., Used in WHERE, FROM,
or SELECT clauses.
Subquery? Types
+
A subquery is a query within another query., Types:, Single-row
subquery, Multiple-row subquery, Correlated subquery
Surrogate key in SQL?
+
A surrogate key is an artificial key, usually auto-incremented,
used as the primary key.
Tables and Fields?
+
Table: Collection of related data organized in rows and
columns., Field (Column): Defines a single type of data within a table., Rows
represent records.
Transaction in SQL?
+
A transaction is a unit of work that is executed completely or
not at all.
Trigger in SQL?
+
A trigger is a set of SQL statements that automatically
executes in response to certain events (INSERT, UPDATE, DELETE).
Trigger?
+
A trigger is a special procedure that automatically executes on
INSERT, UPDATE, or DELETE., Used for enforcing business rules or auditing changes.,
Cannot be called directly like a stored procedure.
TRUNCATE, DELETE, and DROP statements
+
DELETE: Removes specific rows, supports WHERE, slower.,
TRUNCATE: Removes all rows, faster, cannot use WHERE., DROP: Deletes entire table or
database structure.
Types of Collation Sensitivity
+
1. Case-Sensitive (CS/CI) – A ≠ a, 2. Accent-Sensitive (AS/AI)
– é ≠ e, 3. Kana-Sensitive – Japanese Kana differences, 4. Width-Sensitive –
Full-width ≠ Half-width characters
INNER JOIN: Returns matching rows from both tables., LEFT JOIN:
Returns all rows from left table and matched rows from right table., RIGHT JOIN:
Returns all rows from right table and matched rows from left table., FULL OUTER
JOIN: Returns all rows from both tables, with NULLs for unmatched rows.
Types of relationships in SQL
+
One-to-One (1:1), One-to-Many (1:N), Many-to-Many (M:N), These
define how tables relate to each other using keys.
Types of Subquery
+
Single-row subquery: Returns one row., Multiple-row subquery:
Returns multiple rows., Correlated subquery: References columns from the outer
query., Non-correlated subquery: Independent of outer query.
Types of User Defined Functions
+
1. Scalar Functions: Return a single value., 2. Inline
Table-Valued Functions: Return a table via a single SELECT., 3. Multi-Statement
Table-Valued Functions: Return a table using multiple statements.
UNION, MINUS, and INTERSECT commands
+
UNION: Combines results of two queries, removing duplicates.,
MINUS (EXCEPT in some DBs): Returns rows in first query not in second., INTERSECT:
Returns rows common to both queries.
UNIQUE constraint?
+
Ensures that all values in a column are distinct., Helps
maintain data integrity., Multiple UNIQUE constraints can exist in a table.
Unique key?
+
A unique key ensures all values in a column are distinct., Can
have one NULL value (unlike primary key)., Used to enforce uniqueness constraints on
data.
User Defined Functions (UDFs)
+
UDFs are custom functions created by users in SQL., They return
a value or table based on input parameters., Used to encapsulate reusable logic.
User-defined Function (UDF) and its types?
+
UDF is a custom function created by users in SQL., Types:,
Scalar Function: Returns a single value., Table-valued Function: Returns a table.
View in SQL?
+
A view is a virtual table based on the result of a SELECT
query.
WAL (Write Ahead Logging)
+
WAL ensures data integrity in PostgreSQL., Before changes are
written to the main database, they are recorded in a log file., This allows recovery
after crashes and supports replication.
SQL Server
+
Clustered index?
+
A clustered index determines the physical order of data in a
table. Each table can have only one clustered index.
CTE (Common Table Expression)?
+
CTE is a temporary result set used within a query. Defined
using WITH keyword and improves query readability.
Denormalization?
+
Denormalization introduces redundancy to improve query
performance for read-heavy operations.
DiffBet CHAR and VARCHAR?
+
CHAR has fixed length, padding unused spaces. VARCHAR is
variable-length and saves storage space.
DiffBet DELETE, TRUNCATE, and DROP?
+
DELETE removes selected rows and logs changes. TRUNCATE removes
all rows without logging individual deletions. DROP removes the table entirely.
DiffBet INNER JOIN, LEFT JOIN, RIGHT JOIN?
+
INNER JOIN returns matching rows from both tables. LEFT JOIN
returns all left table rows and matching right rows. RIGHT JOIN returns all right
table rows and matching left rows.
DiffBet SQL and T-SQL?
+
SQL is the standard language for relational databases. T-SQL is
Microsoft’s extension with procedural programming, error handling, and built-in
functions.
DiffBet UNION and UNION ALL?
+
UNION removes duplicate rows. UNION ALL keeps all rows
including duplicates.
Indexing?
+
Indexing improves query performance by creating pointers to
data. Examples: clustered, non-clustered, full-text.
Isolation level?
+
Isolation levels control concurrency effects in transactions.
Examples: Read Uncommitted, Read Committed, Repeatable Read, Serializable.
Non-clustered index?
+
Non-clustered indexes create a separate structure pointing to
table rows. A table can have multiple non-clustered indexes.
Normalization?
+
Normalization organizes data to reduce redundancy. Includes
normal forms (1NF, 2NF, 3NF, BCNF).
Primary and foreign keys?
+
Primary key uniquely identifies each row. Foreign key
establishes a relationship between tables to maintain referential integrity.
SQL Server Agent?
+
SQL Server Agent automates scheduled tasks like jobs, alerts,
and backups.
SQL Server?
+
SQL Server is a relational database management system (RDBMS)
by Microsoft. It supports T-SQL, stored procedures, triggers, views, and
ACID-compliant transactions.
Stored procedure?
+
A stored procedure is a precompiled set of SQL statements
executed on demand. It improves performance and ensures code reusability.
Temporary tables?
+
Temporary tables store intermediate results. They exist for the
session or procedure and are prefixed with # (local) or ## (global).
Transaction?
+
A transaction is a set of SQL operations executed as a single
unit. It follows ACID properties (Atomicity, Consistency, Isolation, Durability).
Triggers?
+
Triggers are special stored procedures that automatically
execute in response to INSERT, UPDATE, or DELETE operations on a table.
View?
+
A view is a virtual table based on the result of a SELECT
query. It does not store data physically but simplifies complex queries.
TeamCity
+
Artifact dependency in teamcity?
+
Artifact dependency allows a build to use output files
(artifacts) from another build configuration.
Artifact in teamcity?
+
Build outputs stored for deployment or sharing between build
configurations.
Auto deploy after successful build
+
Use a Jenkinsfile with deployment stages triggered only after
success and optionally use plugins like Kubernetes or AWS deployment tools.
Automating kubernetes deployment
+
Use kubectl, Helm, or ArgoCD via Jenkins pipeline integrated
with Kubernetes credentials.
Blue ocean in jenkins?
+
A modern UI for Jenkins that visualizes pipelines, logs, and
stages more clearly.
Blue-green deployment in jenkins
+
Create two identical environments (Blue & Green). Jenkins
deploys to the idle environment, performs testing, and then switches traffic using a
load balancer. It reduces downtime and supports rollback.
Build agent in teamcity?
+
A build agent is a machine that executes build configurations
on behalf of the TeamCity server.
Build agent requirement?
+
Requirement defines conditions that an agent must meet to run a
build like OS tools or environment variables.
Build agents in teamcity?
+
Workers that execute build configurations. Can be cloud-based
or on-premises.
Build artifact in teamcity?
+
Build artifact is an output of a build like binaries JAR/WAR
files or reports stored for reuse or deployment.
Build chain?
+
Build chain is a sequence of builds connected via snapshot or
artifact dependencies forming a pipeline.
Build configuration in teamcity?
+
A build configuration defines a set of steps triggers and
settings to execute a build.
Build failure condition?
+
A build failure condition defines criteria under which a build
is marked as failed like test failures or compilation errors.
Build feature in teamcity?
+
Build features add extra functionality to builds such as
notifications versioning or build failure conditions.
Build snapshot?
+
Snapshot preserves the state of source code and settings for a
build at a specific point in time.
Build step in teamcity?
+
A build step is a single task in a build configuration such as
compiling code running tests or deploying artifacts.
Build step type?
+
Step type determines the execution method such as Command Line
Ant Maven Gradle or Docker.
Build step?
+
A single operation inside a build, like compiling code or
running tests.
Build templates?
+
Reusable configurations to standardize steps across multiple
projects.
Build trigger in teamcity?
+
A build trigger automatically starts a build based on events
like VCS changes or schedule.
Built-in tools vs custom tools
+
Built-in tools are quick to configure; custom tools offer
better control and versioning.
Ci/cd pipeline for kubernetes
+
Plan steps: Checkout → Build Image → Push to Registry → Deploy
to Kubernetes using Helm, kubectl, or ArgoCD via Jenkins pipeline.
Common jenkins plugins
+
Git, Email Ext, Pipeline, Docker, Kubernetes, SonarQube, Slack,
Maven, and Blue Ocean are commonly used.
Complex pipeline example
+
A complex pipeline may include stages for build, test, quality
scan, approvals, and deployment using multi-branch and container orchestration.
Challenges include failures, dependency management, and scalability.
Continuous delivery vs continuous deployment
+
CD requires manual approval before release; Continuous
Deployment pushes changes automatically without human intervention.
Continuous delivery vs deployment
+
Continuous Delivery prepares software for release manually.
Continuous Deployment automatically deploys every successful build to production.
Declarative vs scripted pipelines
+
Declarative is structured, simple, YAML-like DSL; scripted
allows full Groovy flexibility.
Default jenkins password path?
+
The password is stored in:,
/var/lib/jenkins/secrets/initialAdminPassword (Linux), or the same path inside
Jenkins installation directory on Windows.
Default port number?
+
Jenkins runs on 8080 by default.
Deploying to multiple environments in jenkins
+
Use a pipeline with stages like Dev, QA, UAT, and Prod, along
with environment variables and credentials. Deployment steps can use conditionals or
approvals before proceeding to production.
Develop jenkins plugins
+
Plugins are written in Java/Groovy using Jenkins Plugin SDK and
Maven.
Diffbet configuration and system parameters?
+
Configuration parameters are set per build configuration;
system parameters are global to the agent or server.
Diffbet declarative and scripted pipeline?
+
Declarative is structured, easier to read, and enforces syntax.
Scripted is Groovy-based, flexible, and procedural.
Diffbet personal and regular builds?
+
Personal builds are triggered by a user for testing changes;
regular builds are triggered automatically via triggers.
Diffbet teamcity server and build agent?
+
The server manages projects build configurations and history;
the agent executes build tasks.
Does teamcity support version control?
+
Integrates with Git, SVN, Mercurial, and supports multiple
branches and pull requests.
Finish build trigger?
+
Finish build trigger starts a build when a dependent build
finishes successfully.
Fixing a broken build
+
Check console logs, branch changes, dependency updates,
infrastructure issues, and verify configuration. Roll back recent changes if needed.
Freestyle project
+
Basic project that supports UI-based build configuration
without scripting.
Git commit not triggering
+
Check webhook config, Jenkins URL, branch filters, job
permissions, and credentials. Ensure polling or webhook triggering is enabled.
Global tool configuration
+
Allows central configuration of tools like Maven, JDK, Git,
Gradle, and NodeJS for reuse across jobs.
Using multiple nodes/agents to run builds in parallel for
faster execution and scalability.
Jenkins enterprise vs open source
+
Enterprise offers security, scalability, analytics, enterprise
support, and governance features not in open-source Jenkins.
Jenkins for automated testing
+
Configure a build step to run automation scripts (JUnit,
Selenium, TestNG) and publish test results.
Jenkins home directory path?
+
Usually: /var/lib/jenkins on Linux or inside the Windows
installation folder.
Jenkins job?
+
A task configuration that defines steps to build, test, or
deploy an application. Jobs can be freestyle or pipeline.
Jenkins master vs agent
+
Master controls jobs and UI; agent executes builds.
Jenkins pipeline vs aws codepipeline
+
Jenkins pipeline is self-hosted and highly customizable using
plugins. AWS CodePipeline is managed, scalable, and integrates deeply with AWS
services.
Jenkins pipeline?
+
A pipeline defines stages and steps for automated builds,
tests, and deployments. It can be scripted (Jenkinsfile) or declarative.
Jenkins plugins?
+
Plugins extend Jenkins features, integrating with SCM, build
tools, notification services, and testing frameworks.
Jenkins shared library
+
Reusable functions stored in version control and shared across
multiple pipelines to avoid code duplication.
Jenkins used for?
+
Jenkins is a CI/CD automation server used to build, test, and
deploy software automatically. It supports pipelines, plugins, and integration with
DevOps tools.
Jenkins vs aws codepipeline
+
Jenkins is customizable and self-hosted, CodePipeline is
managed and integrates tightly with AWS.
Jenkins vs github
+
Jenkins is CI/CD automation software, while GitHub is a code
hosting and version control platform with integrations.
Jenkins vs jenkins x
+
Jenkins is plugin-based and works everywhere; Jenkins X
automates cloud-native CI/CD for Kubernetes and GitOps workflows.
Jenkins with aws services
+
Use AWS plugins to integrate S3, EC2 agents, CodeDeploy, EKS,
and CloudFormation automation.
Jenkins x?
+
A cloud-native CI/CD automation system for Kubernetes using
GitOps and automation pipelines.
Jenkins?
+
Jenkins is an open-source automation server for building,
testing, and deploying applications. It supports pipelines, plugins, and integration
with multiple tools.
Jenkinsfile?
+
A text file that defines the pipeline as code. It allows
versioning of build and deployment logic in the repository.
Key features of teamcity?
+
Key features include build management build history distributed
builds CI/CD pipelines extensive plugin support and integration with VCS.
Language used for jenkins pipelines?
+
Pipelines use Groovy-based DSL scripting.
Maintain ci/cd pipeline in github
+
Store Jenkinsfile in the repository and configure Jenkins to
use it through Multibranch or Pipeline job.
Master-slave configuration
+
Master controls scheduling and configuration, while slave
agents execute builds to scale performance and workload.
Mention tools in pipeline
+
Use:, tool 'Maven', Inside Jenkinsfile to reference configured
build tools.
Missing dependency fix
+
Install dependency in agent environment, update Dockerfile, or
configure tools via Jenkins plugins.
Missing notifications
+
Check SMTP/slack setup, job config, plugin status, and
post-build actions.
Multibranch pipeline
+
Automatically creates separate pipelines for each branch using
a shared Jenkinsfile.
Multi-configuration project
+
Runs builds with multiple configurations (OS, browser, JVM)
mainly for matrix testing.
No available nodes
+
Scale by adding agents, increasing executors, or using dynamic
cloud agents like Kubernetes.
Node step in pipeline
+
Defines where the build runs (master or agent) and allocates
workspace.
Pipeline as code
+
It uses a Jenkinsfile stored in the repo to define CI/CD as
versioned code. It improves automation, collaboration, consistency, and
repeatability.
Pipeline in jenkins
+
Automated workflow defined in a Jenkinsfile using Groovy
syntax.
Pipeline vs freestyle
+
Pipeline supports coding CI/CD workflows using Jenkinsfile;
Freestyle is UI-based and limited in automation.
Poll scm mean?
+
It checks the repository at scheduled intervals for new commits
and triggers a build if changes exist.
Poll scm vs webhook
+
Poll SCM checks the source repo at scheduled intervals for
changes, which may cause delay. Webhook instantly notifies Jenkins when code is
pushed, triggering an immediate build. Webhooks are faster and more efficient.
Project in teamcity?
+
A project is a container for one or more build configurations
in TeamCity.
Queued build?
+
Queued build is a build waiting in the queue for an available
agent or dependencies to complete.
Rbac in jenkins
+
Role-Based Access Control restricts user permissions.
Configured using the "Role Strategy" plugin.
Restart jenkins?
+
Use:, http://localhost:8080/restart, or run service command
like systemctl restart jenkins.
Rolling deployment
+
Deploy gradually to subsets of instances while monitoring
performance before full rollout.
Add more agents, use Kubernetes dynamic agents, increase
executor count, or move to master-agent architecture.
Schedule jenkins build (cron format)?
+
Jenkins uses a CRON-based syntax like:, · Every hour: H * * *
*, · Daily: H H * * *, · Weekly: H H * * 1
Schedule trigger?
+
Schedule trigger runs builds at predefined times using
cron-like syntax.
Scm polling vs webhook
+
Polling checks periodically while webhook triggers instantly —
webhook is faster and more efficient.
Securing jenkins
+
Use RBAC, disable anonymous access, enforce HTTPS, integrate
SSO/OAuth, rotate credentials, and restrict plugin installations.
Slow build due to dependencies
+
Use caching, parallel stages, mock services, or increase node
capacity.
Snapshot dependency in teamcity?
+
Snapshot dependency ensures one build configuration waits for
another to complete before starting maintaining the same sources.
Some popular teamcity plugins?
+
Popular plugins include GitHub Slack Maven NUnit Docker and
SonarQube integrations.
Stash and unstash steps
+
Used to temporarily store build artifacts between stages in the
same pipeline.
Stash vs unstash vs persistent workspace
+
Stash temporarily stores small files between stages; persistent
workspace keeps files on the node across jobs.
Teamcity agent authorization?
+
Agent authorization controls which projects or build
configurations an agent can execute.
Teamcity agent pool vs project?
+
Agent pool is a group of agents; projects are assigned to pools
to run builds.
Teamcity agent pool?
+
Agent pool is a group of build agents assigned to specific
projects or configurations.
Teamcity artifact dependencies usage?
+
Artifact dependencies allow reusing outputs from previous
builds in subsequent builds.
Teamcity artifact dependency rules?
+
Rules specify which files or directories are used from another
build configuration.
Teamcity artifact paths?
+
Artifact paths define which files or directories are collected
and stored as build artifacts.
Teamcity audit trail?
+
Audit trail tracks changes user actions and build modifications
for compliance.
Teamcity backup?
+
Backup stores server configuration projects and build data to
restore in case of failure.
Teamcity best practices?
+
Best practices include using templates agent pools artifact
dependencies build parameters and monitoring.
Teamcity build artifacts download?
+
Artifacts download allows users or other builds to retrieve
output files.
Teamcity build artifacts publishing?
+
Artifacts publishing saves build outputs for use in other
builds or deployments.
Teamcity build configuration template?
+
Template defines reusable build steps triggers and settings
across multiple configurations.
Teamcity build failure notification?
+
Failure notification alerts users when a build fails to take
corrective actions.
Teamcity build history retention?
+
Retention policy controls how long builds artifacts and logs
are stored on the server.
Teamcity build history?
+
Build history tracks previous builds including status duration
changes and artifacts.
Teamcity build log?
+
Build log contains detailed output of build steps tests and
errors.
Teamcity build optimization?
+
Build optimization reduces build time using caching
parallelization and efficient dependencies.
Teamcity build parameter?
+
Build parameter is a variable used to customize build steps
triggers or environment settings.
Teamcity build performance monitoring?
+
Build performance monitoring tracks build duration agent
utilization and bottlenecks.
Teamcity build performance optimization?
+
Optimization includes parallel builds agent scaling caching and
dependency management.
Teamcity build priority?
+
Build priority defines execution order when multiple builds
compete for agents.
Teamcity build promotion process?
+
Promotion marks builds suitable for deployment to staging or
production.
Teamcity build promotion?
+
Build promotion marks a build ready for deployment to
production or higher environments.
Teamcity build queue management?
+
Queue management schedules builds based on agent availability
priorities and dependencies.
Teamcity build queue?
+
Build queue is a list of pending builds waiting for available
agents.
Teamcity build report?
+
Build report provides detailed information on build status test
results and artifacts.
Teamcity build rollback?
+
Build rollback reverts to a previous stable build or artifact
in case of issues.
Teamcity build script?
+
Build script automates tasks like compilation testing or
deployment executed as a build step.
Teamcity build snapshot?
+
Snapshot preserves exact source code state for reproducible
builds.
Teamcity build tagging?
+
Build tagging labels builds for easier identification filtering
and release management.
Teamcity build template inheritance?
+
Templates allow multiple configurations to inherit build steps
and settings.
Teamcity build triggers types?
+
Types include VCS trigger schedule trigger finish build trigger
and manual trigger.
Teamcity cloud agent?
+
Cloud agent dynamically provisions build agents in cloud
environments for scaling.
Teamcity cloud integration?
+
Cloud integration provisions build agents dynamically on cloud
platforms like AWS Azure or GCP.
Teamcity code coverage integration?
+
Code coverage plugins like dotCover or JaCoCo show code
coverage metrics in build reports.
Teamcity code coverage?
+
Code coverage measures the percentage of code executed during
tests integrated via plugins.
Teamcity code inspection?
+
Code inspection analyzes code for style violations errors or
best practices using integrated tools.
Teamcity configuration inheritance?
+
Configurations can inherit settings from templates or parent
projects to avoid duplication.
Teamcity configuration parameter types?
+
Types include text password checkbox select and environment
variables.
Teamcity console output?
+
Console output shows real-time messages during build execution.
Teamcity docker integration?
+
Docker integration allows building running and deploying Docker
containers in builds.
Teamcity email notification?
+
Email notification sends build results failures or approvals to
recipients.
Teamcity environment variable?
+
Environment variable stores runtime values accessible to build
steps and agents.
Teamcity failure condition?
+
Failure conditions define rules for marking a build failed e.g.
exit codes test failures or compilation errors.
Teamcity kubernetes integration?
+
Kubernetes integration deploys or tests applications on
Kubernetes clusters using build steps or pipelines.
Teamcity ldap integration?
+
LDAP integration authenticates users against an LDAP server
like Active Directory.
Teamcity monitoring?
+
Monitoring tracks build performance agent health queue and
pipeline status.
Teamcity multi-branch build?
+
Multi-branch build automatically detects branches in VCS and
runs separate builds for each.
Teamcity multi-step build?
+
Multi-step build executes multiple build steps sequentially or
in parallel.
Teamcity notification?
+
Notification informs users about build status via email Slack
or other channels.
Teamcity parameterized build?
+
Parameterized build allows passing dynamic values to customize
build execution.
Teamcity personal build?
+
Personal build allows a developer to test changes before
committing to VCS.
Teamcity pipeline visualization?
+
Pipeline visualization shows build chains and dependencies
graphically.
Teamcity pipeline?
+
Pipeline represents build chain with multiple configurations
and dependencies forming CI/CD workflow.
Teamcity plugin manager?
+
Plugin manager installs updates or removes TeamCity plugins.
Teamcity plugin?
+
Plugin extends TeamCity functionality e.g. integrating new VCSs
tools or notifications.
Teamcity project hierarchy?
+
Projects can contain subprojects and multiple build
configurations forming a hierarchical structure.
Teamcity remote run?
+
Remote run executes personal builds with uncommitted changes to
test before committing.
Teamcity rest api usage?
+
REST API triggers builds retrieves statuses or manages
configurations programmatically.
Teamcity rest api?
+
REST API allows programmatic interaction with TeamCity for
build triggering status and artifact retrieval.
Teamcity restore?
+
Restore recovers server configuration build history and
artifacts from backup.
Teamcity role-based security?
+
Role-based security assigns permissions to users or groups
based on roles.
Teamcity security?
+
Security manages user authentication authorization and
permissions.
Teamcity server vs agent resource usage?
+
Server manages builds and history; agents execute builds and
require CPU memory and disk resources.
Teamcity slack integration?
+
Slack integration sends notifications about build or deployment
status to channels.
Teamcity snapshot vs artifact dependency?
+
Snapshot dependency ensures synchronized sources; artifact
dependency uses output files from another build.
Teamcity sso?
+
Single Sign-On allows users to log in using credentials from an
external identity provider.
Teamcity template?
+
Template defines a reusable set of build steps and settings for
multiple build configurations.
Teamcity test failure handling?
+
Test failure handling can mark build unstable fail build or
trigger notifications.
Teamcity test reporting plugin?
+
Plugins like NUnit or JUnit integrate test results with
TeamCity build status.
Teamcity test reporting?
+
Test reporting integrates results of unit integration or
functional tests into the build status.
Teamcity upgrade process?
+
Upgrade updates TeamCity server and plugins while preserving
configurations and data.
Teamcity webhook?
+
Webhook notifies external systems when build events occur.
Teamcity?
+
TeamCity is a Java-based Continuous Integration (CI) and
Continuous Deployment (CD) server developed by JetBrains.
Trigger jenkins build manually?
+
Click the Build Now button on the job dashboard. Users can also
trigger via REST API or using parameters if configured.
Triggering builds on branch change
+
Configure webhook or Branch Specifier (e.g., */feature-branch)
under SCM settings.
Types of build triggers
+
Manual, Poll SCM, Webhooks, Scheduled CRON jobs, Remote trigger
via API, and Upstream/Downstream triggers.
Types of jenkins jobs
+
Freestyle, Pipeline, Multibranch Pipeline, Maven, and External
jobs.
Vcs labeling in teamcity?
+
VCS labeling tags a version in the VCS to mark builds releases
or milestones.
Vcs root in teamcity?
+
VCS root connects TeamCity to a version control system like Git
SVN or Mercurial.
Vcs trigger?
+
VCS trigger starts a build automatically when changes are
detected in the connected version control system.
Vcs triggers?
+
Triggers that start a build when code changes are pushed to a
repository.
You manage dependencies in teamcity?
+
Using snapshot dependencies and artifact dependencies between
build configurations.
You trigger builds in teamcity?
+
Via VCS changes, schedule triggers, or manual builds.
You trigger jenkins builds?
+
Manual trigger, SCM webhooks, scheduled cron jobs, or triggered
by other jobs.
TECHNICAL LEADERSHIP & MENTORING
+
Cross-functional leadership?
+
Leading teams from different functional areas toward shared
goals.
Leadership styles important?
+
They determine how teams are guided, motivated, and managed.
Leadership qualities?
+
Leadership qualities are traits that enable effective guidance
and influence.
Integrity in leadership?
+
Acting honestly and consistently with values and principles.
Integrity important for leaders?
+
It builds trust and credibility with teams.
Decision-making skill?
+
Ability to choose effective solutions based on information and
judgment.
Accountability culture?
+
An environment where ownership and responsibility are
encouraged.
Ethics important in leadership?
+
They ensure fairness, trust, and long-term success.
Conflict of interest?
+
A situation where personal interests interfere with
professional duties.
Transparency in leadership?
+
Open and honest communication with stakeholders.
Fairness in leadership?
+
Treating all team members equally and justly.
Empathy?
+
Understanding and sharing others’ feelings.
Emotional intelligence (EI)?
+
Ability to recognize, understand, and manage emotions.
Components of emotional intelligence?
+
Self-awareness, self-regulation, motivation, empathy, and
social skills.
Self-awareness?
+
Understanding one’s emotions, strengths, and weaknesses.
Self-regulation?
+
Managing emotions and impulses effectively.
Social awareness?
+
Recognizing emotions and needs of others.
Relationship management?
+
Building and maintaining positive interactions.
Emotional intelligence help leaders?
+
It improves communication, trust, and team performance.
Primary responsibility of a technical leader?
+
Ensuring technical excellence while enabling team productivity.
Architectural decision-making?
+
Choosing system designs that meet current and future needs.
Architectural decisions critical?
+
They impact scalability, performance, and maintainability.
Technology roadmap?
+
A plan outlining technology evolution over time.
Should technical debt be managed?
+
By tracking, prioritizing, and paying it down strategically.
Trade-off analysis?
+
Evaluating pros and cons of technical options.
Risk assessment in technical decisions?
+
Identifying and mitigating potential technical risks.
Proof of concept (PoC)?
+
A small experiment validating a technical approach.
A PoC be used?
+
When feasibility or uncertainty exists.
Decision ownership?
+
Taking responsibility for technical decisions made.
Data-driven decision-making?
+
Using metrics and evidence to guide decisions.
Prioritization in technical leadership?
+
Ordering work based on impact and urgency.
Balancing speed vs quality?
+
Delivering fast without compromising long-term quality.
Escalation management?
+
Handling critical technical issues promptly.
Cross-team collaboration?
+
Coordinating technical efforts across multiple teams.
Decision transparency important?
+
It builds trust and understanding across teams.
Coaching?
+
Coaching is helping individuals improve performance through
feedback and questioning.
Difference between mentoring and coaching?
+
Mentoring focuses on long-term growth; coaching focuses on
short-term performance.
Mentoring important in technical teams?
+
It accelerates learning and builds strong future leaders.
Mentor’s role?
+
To share experience, provide guidance, and support development.
Mentee’s responsibility?
+
To actively learn, ask questions, and apply guidance.
Effective coaching behavior?
+
Listening, asking open questions, and giving constructive
feedback.
Knowledge sharing?
+
Distributing expertise and information across a team.
Knowledge sharing important?
+
It reduces dependency on individuals and improves team
resilience.
Common knowledge sharing methods?
+
Documentation, code reviews, workshops, and pair programming.
Pair programming?
+
Two developers working together on the same code.
Code review mentoring?
+
Using reviews to teach best practices and design thinking.
Brown bag session?
+
An informal learning session during work hours.
Technical documentation?
+
Written explanations of systems, designs, and processes.
Onboarding mentoring?
+
Guiding new team members into systems and culture.
Continuous learning culture?
+
An environment encouraging constant skill improvement.
Feedback loop in mentoring?
+
Regular two-way feedback for improvement.
Psychological safety in mentoring?
+
Creating a safe space for learning and mistakes.
Mentoring critical for leadership success?
+
It builds strong, self-sustaining teams.
Effective communication in leadership?
+
Clear, concise, and purposeful exchange of information.
Communication critical for technical leaders?
+
It ensures alignment, clarity, and trust across teams.
Communication channels in teams?
+
Meetings, emails, chats, documents, and dashboards.
Active listening?
+
Fully focusing, understanding, and responding thoughtfully.
Active listening important?
+
It builds trust and prevents misunderstandings.
Feedback in leadership?
+
Providing constructive input to improve performance.
Constructive feedback?
+
Feedback focused on improvement, not blame.
Collaboration?
+
Working together toward shared goals.
Collaboration important in technical teams?
+
It improves innovation, quality, and speed.
Cross-functional collaboration?
+
Working with teams from different disciplines.
Stakeholder communication?
+
Sharing progress and risks with business stakeholders.
Transparency in communication?
+
Open sharing of information and decisions.
Conflict in teams?
+
Disagreements arising from differing opinions or interests.
Common causes of conflict?
+
Miscommunication, priorities, personality differences, and
stress.
Conflict resolution?
+
Addressing and resolving disagreements constructively.
Collaborative conflict resolution?
+
Finding solutions acceptable to all parties.
Mediation?
+
A neutral party helping resolve conflicts.
Escalation in conflict resolution?
+
Involving higher authority when needed.
Emotional control during conflict?
+
Managing emotions to keep discussions productive.
Conflict resolution important for leaders?
+
It maintains team morale and productivity.
Performance management?
+
Performance management is the process of setting goals,
tracking progress, and evaluating outcomes.
Performance management important?
+
It ensures individuals and teams meet expectations and grow
continuously.
Performance goals?
+
Clearly defined objectives aligned with organizational
priorities.
Goal setting in leadership?
+
Defining clear, measurable, and achievable targets.
SMART goals?
+
Specific, Measurable, Achievable, Relevant, and Time-bound
goals.
Performance feedback?
+
Regular input provided to improve skills and outcomes.
Continuous feedback?
+
Ongoing feedback rather than annual reviews.
Performance review?
+
Formal evaluation of employee performance.
Motivation?
+
The drive that inspires individuals to perform.
Intrinsic motivators?
+
Internal drivers like growth, purpose, and autonomy.
Extrinsic motivators?
+
External rewards like bonuses, promotions, and recognition.
Recognition in leadership?
+
Acknowledging and appreciating good performance.
Recognition important?
+
It boosts morale and engagement.
Employee engagement?
+
Emotional commitment of employees to their work.
Career development?
+
Helping individuals grow skills and progress professionally.
Skill development?
+
Improving technical and soft skills.
Team growth?
+
Collective improvement in capability and maturity.
Succession planning?
+
Preparing future leaders within the team.
Talent retention?
+
Keeping skilled team members long-term.
Team growth critical for leaders?
+
It ensures sustainable success and scalability.
Strategic thinking?
+
Strategic thinking is the ability to plan for the future with a
long-term perspective.
Strategic thinking important for leaders?
+
It helps leaders anticipate challenges and guide sustainable
growth.
Vision important in leadership?
+
It provides direction, purpose, and motivation.
Business alignment?
+
Ensuring technical efforts support business goals.
Technical leaders align with business?
+
By understanding business objectives and constraints.
Strategic roadmap?
+
A high-level plan outlining future initiatives.
Long-term planning?
+
Planning initiatives beyond immediate needs.
Short-term execution?
+
Delivering immediate priorities effectively.
Value-driven development?
+
Focusing work on delivering business value.
ROI in technical decisions?
+
Return on Investment measuring value vs cost.
Prioritization in strategy?
+
Choosing initiatives with highest impact.
Trade-off management?
+
Balancing cost, quality, speed, and scope.
Stakeholder alignment?
+
Ensuring stakeholders agree on direction and priorities.
Risk-based strategy?
+
Planning that accounts for uncertainty and risk.
Competitive advantage?
+
Unique strengths that differentiate the organization.
Technical leaders create competitive advantage?
+
Through innovation, scalability, and reliability.
Metrics-driven strategy?
+
Using data to guide strategic decisions.
Continuous strategy refinement?
+
Adapting strategy based on feedback and results.
Business alignment critical for leaders?
+
It ensures technology investments deliver real value.
Common leadership challenges?
+
Balancing people, technology, time, and business priorities.
Decision pressure in leadership?
+
Making high-impact decisions with limited information.
Handling underperforming team members?
+
Addressing performance issues through feedback and support.
Managing high performers?
+
Keeping top talent challenged and engaged.
Ethical dilemma in leadership?
+
A situation where moral principles conflict.
Should leaders handle ethical dilemmas?
+
By following values, policies, and fairness.
Favoritism in leadership?
+
Unfairly preferring certain individuals.
Favoritism harmful?
+
It erodes trust and team morale.
Managing conflict of interest?
+
Ensuring personal interests do not influence decisions.
Handling failure as a leader?
+
Taking responsibility and learning from mistakes.
Leading during crisis?
+
Providing clarity, calmness, and direction under pressure.
Change management challenge?
+
Helping teams adapt to new processes or technologies.
Resistance to change?
+
Pushback from individuals uncomfortable with change.
Should leaders manage resistance?
+
Through communication, empathy, and involvement.
Real-world leadership scenario?
+
Leading teams through delivery delays or outages.
Stakeholder pressure scenario?
+
Balancing business demands with technical constraints.
Leadership accountability scenario?
+
Owning outcomes even when delegation occurs.
Burnout management?
+
Preventing and addressing team exhaustion.
Ethical leadership in real world?
+
Making fair decisions even when difficult.
Real-world leadership questions important?
+
They assess judgment, ethics, and practical experience.
Accountability in leadership?
+
Accountability means taking responsibility for actions
decisions and outcomes.
Adaptive leadership?
+
Adjusting leadership style to meet the demands of changing
situations or teams.
Autocratic leadership?
+
Autocratic leaders make decisions independently with little
input from the team.
Benefits of team mentoring?
+
Improves collaboration knowledge sharing team cohesion
communication and overall performance.
Change leadership?
+
Change leadership is guiding individuals and organizations
through transitions effectively.
Charismatic leadership?
+
Charismatic leaders use personal charm and inspiration to
influence and motivate others.
Coaching in leadership?
+
Coaching involves helping individuals improve performance solve
problems and reach their potential.
Coaching in mentoring?
+
Guiding mentees to develop skills solve problems and achieve
goals.
Coaching vs mentoring?
+
Coaching focuses on performance; mentoring focuses on overall
development and career growth.
Conflict management in leadership?
+
Resolving disagreements constructively to maintain team
cohesion.
Conflict resolution style in leadership?
+
Styles include avoidance accommodation compromise collaboration
and competition.
Continuous learning in leadership and mentoring?
+
Ongoing development of skills knowledge and personal growth.
Continuous learning in technical leadership?
+
Keeping up-to-date with new technologies frameworks and
methodologies to guide teams effectively.
Crisis leadership?
+
Guiding teams effectively through high-pressure or emergency
situations.
Cross-cultural leadership?
+
Cross-cultural leadership effectively manages and motivates
teams from diverse backgrounds.
Cross-cultural mentoring?
+
Guiding mentees from different cultural backgrounds with
awareness of diversity and inclusion.
Cross-functional team leadership?
+
Leading teams composed of members from different functional
areas to achieve shared goals.
Cross-functional team mentoring?
+
Mentoring teams composed of members from different functions to
enhance collaboration and knowledge sharing.
Decision-making in leadership?
+
Making informed choices by analyzing data, trade-offs, risks,
and team input while aligning with business goals.
Delegation in leadership?
+
Assigning tasks to team members with proper guidance and
authority.
Democratic leadership?
+
Democratic leaders involve the team in decision-making and
encourage participation.
Diffbet authoritative and democratic leadership?
+
Authoritative sets direction and expects compliance; democratic
involves team in decisions.
Diffbet coaching and supervising?
+
Coaching develops skills and potential; supervising oversees
tasks and ensures compliance.
Diffbet hands-on and hands-off technical leadership?
+
Hands-on actively codes and guides implementation; hands-off
focuses on strategy and oversight.
Diffbet individual and team mentoring?
+
Individual mentoring focuses on one-on-one guidance; team
mentoring focuses on group development and collaboration.
Diffbet leader and manager?
+
Leaders inspire and motivate; managers plan organize and
monitor.
Diffbet leadership and authority?
+
Leadership is based on influence and respect; authority is
based on formal position or power.
Diffbet leadership and followership?
+
Leadership involves guiding and influencing; followership
involves supporting and executing directives.
Diffbet leadership and management?
+
Leadership focuses on vision inspiration and change; management
focuses on planning organizing and execution.
Diffbet leadership and mentoring?
+
Leadership focuses on guiding teams toward goals; mentoring
focuses on individual development and knowledge sharing.
Diffbet leadership and power?
+
Leadership relies on influence and motivation; power relies on
control and coercion.
Diffbet mentoring and coaching?
+
Mentoring focuses on long-term career guidance and skill
development. Coaching is short-term, task-focused, and aimed at immediate
performance improvement.
Diffbet team mentoring and team coaching?
+
Team mentoring focuses on knowledge sharing and development;
team coaching focuses on performance improvement and results.
Diffbet technical lead and project manager?
+
Technical leads focus on technical decisions, mentoring, and
code quality; project managers focus on timelines, budgets, and stakeholder
management.
Diffbet technical leadership and engineering management?
+
Technical leadership focuses on technical direction and
mentoring; engineering management focuses on team performance hiring and operational
efficiency.
Diffbet technical leadership and project management?
+
Technical leadership focuses on technical direction and
mentoring; project management focuses on planning execution and delivery.
Distributed leadership?
+
Distributed leadership shares responsibilities among multiple
team members to maximize collaboration.
Emotional intelligence (ei) in leadership and mentoring?
+
The ability to understand and manage one’s own and others’
emotions effectively.
Emotional intelligence (ei) in leadership?
+
EI is the ability to recognize understand and manage your own
and others’ emotions effectively.
Empowerment in mentoring?
+
Encouraging mentees to take ownership of decisions and actions.
Ethical leadership?
+
Ethical leadership emphasizes honesty fairness and integrity in
decision-making and actions.
Feedback in mentoring?
+
Providing constructive guidance to help the mentee improve
performance or skills.
Feedback loop in leadership and mentoring?
+
Continuous process of giving and receiving feedback to drive
improvement.
Group coaching in team mentoring?
+
Helping teams develop skills solve problems and improve
performance collectively.
Importance of documentation in technical leadership?
+
Ensures knowledge transfer maintainability and onboarding
efficiency.
Importance of mentoring in leadership?
+
Mentoring develops future leaders improves engagement and
transfers organizational knowledge.
Importance of mentorship in technical leadership?
+
Mentorship helps team members grow skills improves productivity
and prepares future technical leaders.
Inclusive leadership impact?
+
It enhances team diversity engagement innovation and retention.
Inclusive leadership?
+
Ensuring all team members feel valued respected and included.
Inclusive mentoring?
+
Providing equitable guidance and support regardless of mentee
background or identity.
Inclusive team mentoring?
+
Ensuring all team members feel valued heard and included in
mentoring activities.
Key leadership styles?
+
Styles include transformational transactional servant
autocratic democratic laissez-faire and situational.
Key qualities of a good leader?
+
Communication empathy integrity vision decisiveness
adaptability and accountability.
Key qualities of a good mentor?
+
Patience active listening empathy guidance feedback and
encouragement.
Key qualities of a team mentor?
+
Communication empathy adaptability patience leadership and
facilitation skills.
Key qualities of a technical leader?
+
Strong technical knowledge communication problem-solving
decision-making mentorship and strategic thinking.
Knowledge transfer in leadership?
+
Sharing skills, architecture knowledge, and best practices with
team members to prevent silos.
Laissez-faire leadership?
+
Laissez-faire leaders provide minimal guidance and allow team
members autonomy.
Leadership accountability culture?
+
A culture where leaders and team members take responsibility
for outcomes and follow through.
Leadership accountability framework?
+
A framework that defines responsibilities expectations and
metrics for leader performance.
Leadership accountability measurement?
+
Using metrics feedback and evaluations to assess responsibility
and performance.
Leadership accountability metrics?
+
Measurable indicators to track responsibility performance and
results.
Leadership accountability vs responsibility?
+
Accountability is answerability for outcomes; responsibility is
the duty to perform tasks.
Leadership accountability?
+
Taking responsibility for decisions actions and outcomes.
Leadership adaptability?
+
The ability to adjust style strategy and behavior in response
to changing circumstances.
Leadership alignment?
+
Leadership alignment ensures team goals values and actions
support organizational objectives.
Leadership change management?
+
Leading individuals and teams through organizational change
smoothly and effectively.
Leadership coaching techniques?
+
Techniques include active listening asking powerful questions
giving feedback and goal setting.
Leadership collaboration?
+
Working effectively with teams peers and stakeholders toward
shared objectives.
Leadership communication styles?
+
Styles include assertive empathetic persuasive and
participative.
Leadership communication?
+
Effective exchange of information active listening clarity and
motivation.
Estimate tasks provide technical input ensure feasibility and
identify dependencies.
Role of feedback in team mentoring?
+
Providing insights guidance and constructive suggestions to
help the team improve collectively.
Role of leadership in agile teams?
+
Guide, remove impediments, facilitate collaboration, ensure
alignment with goals, and support continuous improvement.
Role of metrics in leadership?
+
Track productivity, quality, cycle time, and team health to
make informed decisions.
Role of technical leaders in architecture reviews?
+
Evaluate design decisions ensure best practices and guide
improvements.
Role of technical leaders in system scalability?
+
Design scalable architectures plan capacity and guide
implementation for growth.
Servant leadership impact?
+
It improves team morale collaboration and employee development.
Servant leadership philosophy?
+
Servant leadership prioritizes the needs and growth of team
members over the leader’s personal gain.
Servant leadership?
+
Leaders support, remove blockers, and empower teams rather than
controlling them.
Servant vs autocratic leadership?
+
Servant focuses on team growth; autocratic emphasizes control
and top-down decisions.
Servant vs transformational leadership?
+
Servant prioritizes team growth; transformational focuses on
inspiring change and vision.
Should a technical leader manage technical debt?
+
By prioritizing planning refactoring enforcing best practices
and balancing short-term and long-term goals.
Situational leadership?
+
Adapting leadership style based on team skills maturity and
situation.
Situational mentoring?
+
Adapting mentoring style to mentee’s experience confidence and
needs.
Situational vs adaptive leadership?
+
Situational adapts style to team maturity; adaptive responds to
changing environments and challenges.
Stakeholder management?
+
Identifying stakeholders, understanding expectations,
communicating progress, and managing concerns.
Strategic leadership?
+
Aligning organizational goals resources and team efforts to
achieve long-term objectives.
Strategic technical planning?
+
Long-term planning of architecture technology stack and system
evolution aligned with business goals.
Strategic thinking in leadership?
+
Strategic thinking involves analyzing trends anticipating
challenges and planning for long-term success.
Team leadership?
+
Team leadership is guiding a group to achieve goals fostering
collaboration and resolving conflicts.
Team mentoring best practice?
+
Establish trust communicate clearly encourage participation
provide feedback and celebrate achievements.
Team mentoring evaluation?
+
Assessing the team’s growth collaboration skill improvement and
goal achievement.
Team mentoring feedback process?
+
Collecting discussing and implementing feedback from all team
members to improve performance.
Team mentoring for career development?
+
Helping team members develop skills knowledge and confidence to
grow in their careers.
Team mentoring for cross-training?
+
Helping team members develop skills in multiple areas to
enhance flexibility and knowledge sharing.
Team mentoring for onboarding?
+
Supporting new team members to integrate quickly and understand
processes culture and expectations.
Team mentoring in agile environments?
+
Guiding agile teams on collaboration iterative improvement and
self-organization.
Team mentoring in leadership?
+
Supporting team members’ growth via guidance, knowledge
sharing, code reviews, and training.
Team mentoring session structure?
+
Introduction goal review group discussion activities feedback
and action planning.
Team mentoring?
+
Team mentoring is guiding and supporting team members to
enhance their skills, productivity, and career growth. It involves coaching,
knowledge sharing, and providing constructive feedback.
Tech spike?
+
A time-boxed research task to explore technologies, assess
feasibility, or mitigate risks before implementation.
Technical debt prioritization?
+
Deciding which technical debts to address first based on risk
impact and resources.
Technical debt?
+
Technical debt refers to shortcuts or suboptimal solutions in
code that may cause future maintenance challenges.
Technical decision-making?
+
Making informed choices about architecture frameworks tools and
processes considering trade-offs.
Technical leaders align technical decisions with business
goals?
+
By understanding business priorities evaluating trade-offs and
ensuring technology supports objectives.
Technical leaders balance innovation and stability?
+
Assess risk plan incremental changes and maintain system
reliability.
Technical leaders balance short-term vs long-term goals?
+
Assess priorities manage technical debt and align with
strategic objectives.
Technical leaders balance technical innovation with business
needs?
+
Evaluate ROI risk and strategic alignment before implementing
new technologies.
Technical leaders build high-performing teams?
+
Hire skilled members mentor foster collaboration and recognize
contributions.
Technical leaders drive innovation?
+
Encourage experimentation research new technologies and create
an environment that allows creative problem-solving.
Technical leaders encourage code quality?
+
Enforce best practices conduct code reviews provide training
and use automated tools.
Technical leaders ensure software security?
+
Implement best practices code reviews security audits and
monitoring.
Technical leaders evaluate new technologies?
+
Analyze business needs technical feasibility scalability
security and integration potential.
Technical leaders evaluate team skill gaps?
+
Assess current skills project needs and plan training or
mentorship programs.
Technical leaders facilitate knowledge sharing?
+
Organize sessions documentation mentorship and collaborative
tools.
Technical leaders foster a culture of accountability?
+
Set clear expectations track outcomes and provide constructive
feedback.
Technical leaders foster a culture of innovation?
+
Encourage experimentation reward creative solutions and remove
fear of failure.
Technical leaders foster a learning culture?
+
Encourage experimentation continuous learning and knowledge
sharing.
Technical leaders foster collaboration?
+
Promote open communication knowledge sharing and
cross-functional teamwork.
Technical leaders handle conflicting priorities?
+
Evaluate impact negotiate resources and make informed
trade-offs.
Technical leaders handle cross-team dependencies?
+
Communicate clearly coordinate schedules and align priorities.
Technical leaders handle emerging technologies?
+
Evaluate relevance pilot new tools and guide team adoption
responsibly.
Assess pros and cons facilitate discussions and make
evidence-based decisions.
Technical leaders support career growth of team members?
+
Provide mentorship learning opportunities challenging projects
and feedback.
Technical leaders support cross-team mentoring?
+
Encourage knowledge sharing pair programming and collaborative
learning across teams.
Technical leaders support remote collaboration?
+
Use communication tools document processes and maintain
visibility and engagement.
Technical leadership in ai/ml projects?
+
Guiding model design data pipelines team skills and deployment
strategies.
Technical leadership in cloud adoption?
+
Guide architecture cost optimization security and team skill
development in cloud environments.
Technical leadership in cross-functional teams?
+
Guiding technical aspects while collaborating with design
product and business teams.
Technical leadership in devops pipelines?
+
Ensuring smooth automation monitoring and integration across
development and operations.
Technical leadership in open-source contributions?
+
Guiding teams to contribute review and collaborate effectively
on open-source projects.
Technical leadership?
+
Technical leadership involves guiding a team in architecture,
design, code quality, best practices, and problem-solving while aligning with
business goals.
Technical mentorship?
+
Guiding team members on coding standards architecture best
practices and problem-solving.
Technical vision?
+
A technical leader’s plan or direction for technology adoption
architecture and system evolution.
To balance technical debt vs feature delivery?
+
Assess business impact, plan refactoring iteratively, and
prioritize critical fixes while delivering features.
To conduct an effective mentoring session?
+
Set clear objectives, encourage questions, demonstrate
practical examples, provide constructive feedback, and follow up on progress.
To encourage continuous learning in teams?
+
Provide training, certifications, knowledge sharing sessions,
and time for experimentation.
To ensure scalability in a team?
+
Train team members, document practices, delegate
responsibilities, and adopt modular processes.
To foster innovation in teams?
+
Encourage experimentation, knowledge sharing, hackathons, and a
safe environment for trying new ideas.
To handle legacy systems while leading modernization?
+
Analyze current system, define upgrade strategy, prioritize
critical components, and ensure minimal disruption.
To maintain architecture consistency across projects?
+
Define standards, reusable components, reference architectures,
and conduct regular reviews.
Transactional leadership focuses on structure rules rewards and
penalties to manage performance.
Transformational leadership impact?
+
It increases engagement innovation motivation and
organizational performance.
Transformational leadership?
+
Leadership that inspires and motivates others to achieve higher
performance and personal growth.
Transformational vs transactional leadership?
+
Transformational inspires change and growth; transactional
manages through rules and rewards.
Visionary leadership?
+
Visionary leadership focuses on setting a long-term direction
and inspiring others to follow it.
Visionary vs strategic leadership?
+
Visionary focuses on long-term inspiration; strategic focuses
on practical planning and execution.
You address low engagement in team mentoring?
+
Identify causes adjust approach provide incentives and
encourage open communication.
You address mentoring fatigue in a team?
+
Rotate responsibilities vary activities provide breaks and
recognize efforts.
You address team mentoring challenges?
+
Identify issues facilitate discussion adjust approach and
provide guidance tailored to the team’s needs.
You align mentoring activities with team kpis?
+
Integrate mentoring goals with performance metrics and business
objectives.
You approach architecture refactoring?
+
Assess current pain points, plan incremental refactoring,
ensure backward compatibility, and communicate changes to the team.
You balance feature delivery with technical excellence?
+
Prioritize tasks, communicate trade-offs to stakeholders, and
allocate time for refactoring or improvements.
You balance mentoring and hands-on coding?
+
Allocate time for mentoring, delegate tasks, lead architecture
discussions, and participate in critical coding tasks selectively.
You balance mentoring individual needs within a team?
+
Provide tailored support while maintaining group objectives and
cohesion.
You balance mentoring with project deadlines?
+
Schedule mentoring in manageable chunks, delegate
appropriately, and integrate mentoring into daily stand-ups or code reviews without
delaying project timelines.
You balance multiple projects as a technical lead?
+
Prioritize based on impact, delegate effectively, track
progress in tools like Jira, and communicate status to stakeholders.
Be consistent transparent respectful and supportive encouraging
team participation.
You capture lessons learned from team mentoring?
+
Document experiences outcomes and recommendations for future
mentoring initiatives.
You develop leadership potential in a team?
+
Assign responsibilities provide guidance give feedback and
create growth opportunities.
You encourage accountability in team mentoring?
+
Set clear expectations track progress and provide constructive
feedback.
You encourage cross-functional collaboration in team
mentoring?
+
Promote shared projects knowledge exchange and open
communication.
You encourage innovation in your team?
+
Support experimentation, allocate time for R&D, reward creative
solutions, and celebrate successful innovations.
You encourage participation in team mentoring sessions?
+
Use interactive activities discussions polls and recognize
contributions.
You encourage peer learning in a team?
+
Promote knowledge sharing pair members for tasks and facilitate
collaborative activities.
You encourage team engagement in mentoring?
+
Foster open communication provide recognition involve all
members and make sessions interactive.
You ensure high code quality across the team?
+
Use coding standards, code reviews, automated testing, CI/CD
pipelines, and enforce best practices.
You ensure quality in deliverables?
+
Implement code reviews, automated testing, architecture
standards, and continuous monitoring.
You ensure security best practices in code?
+
Enforce code review checks, automated security scans, input
validation, and regular training on vulnerabilities.
You ensure team mentoring sustainability?
+
Integrate into culture provide resources and train internal
mentors.
You ensure your team stays updated with best practices?
+
Organize training, share articles, enforce coding standards,
review external case studies, and encourage certifications.
You establish team mentoring objectives?
+
Collaborate with the team to define clear measurable and
realistic goals.
You evaluate a developer’s technical performance?
+
Assess code quality, problem-solving skills, adherence to
standards, contribution in reviews, and ability to mentor others.
You evaluate team mentoring effectiveness?
+
Through performance metrics feedback surveys goal achievement
and behavioral changes.
You facilitate knowledge sharing in a team?
+
Use discussions workshops collaborative tools and mentorship
sessions to exchange expertise.
You facilitate team brainstorming sessions?
+
Set clear objectives encourage participation and manage
discussion flow.
You facilitate team learning from failures?
+
Promote reflection discussion and actionable lessons for
improvement.
You facilitate team reflection in mentoring?
+
Encourage discussions on lessons learned successes failures and
improvements.
You facilitate virtual team mentoring?
+
Use video conferencing shared collaboration tools regular
check-ins and clear documentation.
You foster a collaborative team environment?
+
Encourage knowledge sharing, transparent communication, peer
reviews, pair programming, and recognition of contributions.
You foster a culture of accountability?
+
Set clear expectations, monitor progress, provide feedback,
recognize ownership, and address lapses promptly.
You foster creativity in team mentoring?
+
Encourage idea sharing brainstorming sessions safe
experimentation and recognition of contributions.
You handle a junior struggling with tasks?
+
Break tasks into smaller steps, provide guidance without doing
the work, offer code examples, and gradually increase responsibility to build
confidence.
You handle a tight deadline with quality expectations?
+
Prioritize critical features, apply risk-based testing,
maintain code reviews, and communicate trade-offs to stakeholders.
You handle conflicts in a technical team?
+
Listen to all parties, identify root causes, facilitate
constructive discussion, and guide towards consensus.
You handle conflicts in team mentoring?
+
By facilitating discussions promoting understanding finding
common ground and encouraging constructive solutions.
You handle conflicts in technical decisions?
+
Facilitate discussions, present data-driven arguments, consider
team input, and align decisions with project goals.
You handle disagreements on technical design?
+
Encourage open discussion, provide pros/cons, consider data,
involve neutral stakeholders, and align on business goals.
You handle diverse skill levels in a team mentoring program?
+
Assign tasks based on strengths encourage peer learning and
provide tailored support.
You handle emergency production issues?
+
Prioritize fixing critical issues, assemble a focused team,
implement hotfixes, and document root cause and preventive actions.
You handle inter-team dependencies?
+
Coordinate with other leads, document dependencies, schedule
joint meetings, and track progress via tools like Jira or Confluence.
You handle knowledge silos in teams?
+
Encourage documentation, cross-training, pair programming, and
rotating responsibilities across modules.
You handle mentor overload in team mentoring programs?
+
Limit mentee numbers delegate tasks and provide additional
support resources.
You handle multiple stakeholders with conflicting interests?
+
Prioritize based on business value, negotiate compromises, and
maintain transparency in decisions.
You handle personality conflicts in a team mentoring program?
+
Identify issues mediate discussions and promote understanding
and compromise.
You handle remote teams in mentoring?
+
Use virtual tools schedule regular video sessions encourage
communication and track progress digitally.
You handle team resistance to mentoring?
+
Understand concerns explain benefits and adapt methods to meet
team needs.
You handle technical conflicts in a team?
+
Facilitate discussions evaluate options provide guidance and
reach consensus based on technical merits.
You handle tight deadlines?
+
Prioritize tasks, delegate effectively, automate processes, and
communicate realistic expectations.
You handle underperforming team members?
+
Identify root causes, provide mentoring, set clear
expectations, monitor improvement, and provide feedback constructively.
You handle uneven participation in team mentoring?
+
Encourage quieter members assign roles and create inclusive
discussions.
You identify mentoring needs in a team?
+
Assess skill gaps, performance metrics, peer feedback, and
project challenges. One-on-one discussions and knowledge assessments can help
identify areas to mentor.
You implement ci/cd effectively?
+
Automate builds, tests, and deployment, integrate quality
checks, and monitor pipelines for failures and improvements.
You integrate mentoring with team goals?
+
Align mentoring activities with team objectives and
organizational priorities.
You integrate mentoring with team performance reviews?
+
Use mentoring insights to support evaluations feedback and
development planning.
You keep the team updated with new technologies?
+
Organize tech sessions, workshops, encourage learning
platforms, and share articles or demos.
You maintain motivation in long-term team mentoring programs?
+
Regularly set milestones celebrate achievements and provide
ongoing support.
You make architectural decisions?
+
Analyze requirements, evaluate trade-offs, consider
scalability, maintainability, and cost, and discuss with the team for consensus.
You manage code merges and conflicts?
+
Establish Git branching strategies, perform code reviews, and
resolve conflicts using pair programming or automated merge tools.
You manage mentor-mentee ratios in a team?
+
Maintain a manageable number of mentees per mentor to ensure
effective guidance.
You manage project scope changes?
+
Evaluate impact on timeline, cost, and architecture; negotiate
with stakeholders and document changes.
You manage remote teams as a tech lead?
+
Use collaboration tools (Slack, Jira, Confluence), schedule
regular check-ins, set clear goals, and maintain visibility on progress.
You manage team mentoring schedules?
+
Plan regular sessions coordinate availability and ensure
consistent engagement.
You manage technical debt?
+
Identify debt areas, prioritize based on risk and impact,
refactor code incrementally, and allocate time in sprints for cleanup.
You measure team performance?
+
Use KPIs like velocity, defect density, delivery rate, and
feedback from code reviews and retrospectives.
You measure team productivity?
+
Use metrics like story points completed, code quality, defect
rates, cycle time, and peer feedback.
You measure the success of team mentoring?
+
By evaluating team skill growth engagement collaboration goal
achievement and feedback.
You mentor remote team members?
+
Use video calls, chat, screen sharing, and shared
documentation. Schedule regular check-ins and provide timely feedback.
You mentor senior developers differently from juniors?
+
Focus on leadership, architecture, and design skills for
seniors, while focusing on coding practices, debugging, and fundamentals for
juniors.
You motivate a team in mentoring sessions?
+
Set clear goals recognize contributions encourage participation
and foster ownership.
You motivate high-performing and low-performing team members?
+
Provide tailored recognition set clear expectations and offer
individualized support.
You motivate team members to learn new technologies?
+
Encourage learning through hands-on projects, provide
resources, acknowledge efforts, and connect new skills to career growth.
You motivate team members?
+
Provide growth opportunities, acknowledge achievements, assign
challenging tasks, and maintain an inclusive environment.
You onboard new team members?
+
Provide documentation, assign mentors, walk through
architecture and codebase, and gradually involve them in tasks.
You perform risk management in technical projects?
+
Identify risks, assess impact, plan mitigation strategies,
monitor continuously, and adjust plans proactively.
You prepare a succession plan for your team?
+
Identify potential leaders, mentor them on technical and
leadership skills, delegate responsibilities gradually, and monitor progress for
readiness.
You prioritize tasks in software projects?
+
Assess business value, urgency, dependencies, and risks; use
frameworks like MoSCoW or weighted scoring.
You promote collaboration in team mentoring?
+
Encourage joint problem-solving discussions shared goals and
recognition of contributions.
You promote knowledge sharing in teams?
+
Conduct brown-bag sessions, maintain wikis or Confluence pages,
encourage pairing, and document learnings.
You promote psychological safety in team mentoring?
+
Encourage open dialogue respect opinions and create a
non-judgmental environment.
You provide constructive feedback to a team?
+
Focus on behavior and outcomes be specific encourage discussion
and suggest improvements.
You set goals in team mentoring?
+
Identify team objectives define measurable outcomes assign
responsibilities and track progress.
You structure a team mentoring program?
+
Define goals identify participants set sessions assign
activities and track progress.
You structure long-term team mentoring programs?
+
Define milestones objectives review sessions and development
checkpoints.
You support introverted team members in mentoring?
+
Provide one-on-one check-ins encourage contributions and
respect communication styles.
You track mentee progress?
+
Use task completion metrics, skill assessments, code quality
reviews, and regular one-on-one check-ins.
You track progress in team mentoring?
+
Use performance metrics feedback goal completion and regular
check-ins.
TERRAFORM
+
Use Terraform?
+
It enables automation, consistency, scalability, and
repeatability.
Problem does Terraform solve?
+
Manual infrastructure provisioning and configuration drift.
Language does Terraform use?
+
HashiCorp Configuration Language (HCL).
Is HCL human-readable?
+
Yes, it is readable and JSON-compatible.
Platforms does Terraform support?
+
AWS, Azure, GCP, Kubernetes, GitHub, and more.
Is Terraform multi-cloud?
+
Yes, Terraform supports multi-cloud deployments.
Develops Terraform?
+
Terraform is developed by HashiCorp.
Declarative infrastructure?
+
Defining desired state instead of steps.
State important?
+
It enables update, destroy, and drift detection.
Terraform detect drift?
+
Using terraform plan or refresh.
Mutable infrastructure?
+
Updating resources in place.
Does Terraform support immutable infrastructure?
+
Yes, through resource recreation.
Core Terraform features?
+
Execution plan, dependency graph, state management,
multi-cloud.
Providers required in Terraform?
+
They enable Terraform to manage specific platforms or services.
Are providers configured?
+
Using the provider block in Terraform configuration.
Provider authentication?
+
Credentials used by provider to access APIs.
Resource in Terraform?
+
A resource defines an infrastructure object.
Are resources declared?
+
Using resource blocks in Terraform files.
Resource type?
+
The kind of infrastructure being created.
Resource name?
+
A local identifier for referencing a resource.
Resource dependency?
+
Order in which resources must be created.
Terraform handle dependencies?
+
Automatically using references between resources.
Explicit dependency?
+
Using depends_on to enforce creation order.
Implicit dependency?
+
Dependencies inferred from resource references.
Data source?
+
A read-only reference to existing infrastructure.
Use data sources?
+
To fetch existing resource information.
Are data sources declared?
+
Using data blocks in configuration.
Provider alias?
+
Multiple provider configurations for same provider.
Are provider aliases used?
+
Managing multiple accounts or regions.
Resource lifecycle block?
+
Controls create, update, and destroy behavior.
Providers and resources important?
+
They form the foundation of Terraform infrastructure
management.
State stored by default?
+
In a local terraform.tfstate file.
Terraform state important?
+
It tracks infrastructure and enables change management.
Use remote state?
+
For collaboration and centralized state management.
Backend in Terraform?
+
A backend defines where state is stored.
Common backends?
+
S3, Azure Blob, GCS, Terraform Cloud.
State locking?
+
Preventing concurrent state modifications.
State locking important?
+
To avoid corruption from parallel runs.
Supports state locking?
+
Backends like S3 with DynamoDB or Terraform Cloud.
State file sensitivity?
+
State may contain secrets.
Protect state file?
+
Use encryption and restricted access.
Terraform state list?
+
Lists resources in state.
Terraform state show?
+
Displays detailed state of a resource.
State drift?
+
Difference between state and actual infrastructure.
Drift detected?
+
Using terraform plan.
Partial configuration?
+
Backend config split for security.
Backend configuration critical?
+
It ensures safe, scalable state management.
Variables in Terraform?
+
Variables allow parameterizing configurations for reuse and
flexibility.
Input variable?
+
A value passed into Terraform configuration at runtime.
Are variables declared?
+
Using variable blocks in .tf files.
Variable types are supported?
+
string, number, bool, list, map, set, object, and tuple.
Default value in variable?
+
A fallback value when no input is provided.
Variables be passed to Terraform?
+
Using tfvars files, CLI flags, or environment variables.
Tfvars file?
+
A file containing variable values.
Sensitive variable?
+
A variable marked to hide value in outputs.
Validation block?
+
Defines rules to validate variable input.
Local values?
+
Named expressions to simplify configuration.
Outputs in Terraform?
+
Values displayed after apply for reference.
Outputs used?
+
To expose important resource information.
Are outputs declared?
+
Using output blocks.
Output sensitivity?
+
Marking outputs to hide sensitive data.
Terraform expression?
+
Logic used to compute values dynamically.
Interpolation expressions?
+
Embedding expressions inside strings.
Conditional expressions?
+
Ternary expressions based on conditions.
For expressions?
+
Iterating over collections to transform values.
Functions in Terraform?
+
Built-in helpers for string, numeric, and collection
operations.
Variables and expressions important?
+
They make Terraform code reusable, readable, and dynamic.
Use Terraform modules?
+
To promote reuse, consistency, and maintainability.
Root module?
+
The main working directory containing Terraform configuration.
Child module?
+
A module called by another module.
Are modules declared?
+
Using the module block.
Module inputs?
+
Variables passed into a module.
Module outputs?
+
Values exposed by a module.
Are modules versioned?
+
Using version constraints from registries or VCS.
Module source?
+
The location from where a module is loaded.
Sources can modules use?
+
Local paths, Git, Terraform Registry, and URLs.
Module composition?
+
Combining multiple modules to build infrastructure.
DRY principle in Terraform?
+
Avoid duplicating infrastructure code.
Recommended Terraform project structure?
+
Separate modules, environments, and state.
Environment separation?
+
Maintaining separate configs for dev, test, prod.
Module encapsulation?
+
Hiding internal resource details from consumers.
Module interface?
+
Inputs and outputs exposed by a module.
Reusability best practice?
+
Design small, focused modules.
Dependency inversion in modules?
+
Passing dependencies via inputs instead of hardcoding.
Module design important?
+
It ensures scalable and maintainable IaC codebases.
Terraform workflow?
+
The sequence of steps to manage infrastructure using Terraform.
Main Terraform workflow steps?
+
init, plan, apply, and destroy.
Terraform init do?
+
Initializes providers, modules, and backend.
Terraform plan do?
+
Creates an execution plan showing proposed changes.
Terraform apply do?
+
Applies the planned changes to infrastructure.
Terraform destroy do?
+
Deletes managed infrastructure resources.
Terraform show?
+
Displays current state or plan output.
Ignore_changes?
+
Ignores changes to specified attributes.
Plan approval workflow?
+
Manual review before apply.
Automated Terraform workflow?
+
CI/CD-driven Terraform execution.
Terraform workflow important?
+
It ensures predictable and safe infrastructure changes.
Terraform security?
+
Practices to protect infrastructure code, state, and execution.
Use encryption, access controls, and remote backends.
Secret management in Terraform?
+
Handling credentials securely.
Avoid hardcoding secrets?
+
They can be leaked via code or state.
Environment variable usage?
+
Passing secrets via environment variables.
Sentinel?
+
Policy-as-code framework for Terraform.
Policy as code?
+
Defining compliance rules using code.
CI/CD integration with Terraform?
+
Automating Terraform workflows in pipelines.
Terraform plan in CI?
+
Validating changes before apply.
Terraform apply in CD?
+
Applying changes after approval.
Infrastructure testing?
+
Validating infrastructure configurations.
Terraform validate in CI?
+
Syntax and configuration validation.
Terraform fmt in pipelines?
+
Ensuring code formatting standards.
Version pinning?
+
Locking provider and Terraform versions.
Drift management best practice?
+
Regular plan checks.
Terraform best practices critical?
+
They ensure safe, scalable, and maintainable infrastructure.
Best Practices in Terraform?
+
Use modules, remote state, version control, and least privilege
access. Apply workspace separation and use .tfvars files for automation. Use
formatting, validation, and policy enforcement. Commit code reviews for safety.
Data Sources in Terraform?
+
Data sources fetch existing information from providers without
creating a new resource. They are read-only and useful for referencing available
values. Example: fetching an existing VPC ID. Used with data blocks.
Input Variables?
+
Input variables allow parameterization of Terraform
configurations. They help reuse modules across multiple environments like dev, QA,
and prod. Variables can be stored in .tfvars files. They support type constraints
like string, number, and map.
Output Variables?
+
Output variables return values from configuration after
execution. They help share information between modules or display key results.
Examples include IP addresses or resource IDs. They are defined using output.
Terraform Providers?
+
Providers act as plugins that enable Terraform to interact with
cloud platforms or services. Examples include AWS, Azure, GCP, Kubernetes, and
GitHub. A provider must be initialized before use with terraform init. It defines
available resources and data sources.
Create_before_destroy?
+
Create_before_destroy ensures a new resource is created before
destroying the old one.
Developed Terraform?
+
Terraform is developed by HashiCorp.
Immutable and mutable infrastructure?
+
Immutable infrastructure is replaced entirely for changes;
mutable infrastructure is updated in place.
Local-exec and remote-exec?
+
Local-exec runs commands on the machine running Terraform;
remote-exec runs commands on the target resource.
Module and resource?
+
Module is a collection of resources; resource represents a
single infrastructure component.
Terraform and Ansible?
+
Terraform is declarative and focuses on provisioning
infrastructure; Ansible is procedural and focuses on configuration management.
Terraform and CloudFormation?
+
Terraform is multi-cloud and open-source; CloudFormation is
AWS-specific.
Terraform and Pulumi?
+
Terraform uses HCL for declarative configurations; Pulumi uses
programming languages for IaC.
Terraform resource and data?
+
Resource creates or manages infrastructure; data fetches
existing infrastructure information.
DiffBet Ansible and Terraform?
+
Terraform focuses on infrastructure provisioning while Ansible
focuses on configuration management. Terraform uses a declarative approach whereas
Ansible is procedural. Terraform stores a state file whereas Ansible does not.
Drift in Terraform?
+
Drift occurs when the actual infrastructure changes outside
Terraform. Terraform detects drift during terraform plan. Drift needs correction to
maintain consistency. Best practice is managing infrastructure only through
Terraform.
IaC (Infrastructure as Code)?
+
IaC is a method of managing and provisioning infrastructure
through code instead of manual processes. It increases consistency, automation,
scalability, and repeatability. Tools like Terraform, CloudFormation, and Ansible
enable IaC. This approach helps eliminate configuration drift across environments.
Immutable Infrastructure?
+
Immutable infrastructure treats launched resources as
replaceable instead of modifying them. Terraform supports this approach by
recreating resources instead of modifying them. It improves stability and reduces
configuration drift.
Infrastructure Provisioning?
+
Provisioning means creating, configuring, and deploying
infrastructure resources. Terraform automates provisioning using IaC. It helps in
consistent and automated cloud resource deployment. Faster and error-free process.
Main features of Terraform?
+
Features include declarative configuration execution plan
resource graph multi-cloud support and state management.
Policy as Code in Terraform?
+
Policy as Code enforces compliance rules using Sentinel in
Terraform Enterprise or Cloud. It ensures deployments follow organizational security
and governance. Policies can allow, deny, or audit changes.
Prevent_destroy?
+
Prevent_destroy prevents accidental deletion of a resource.
Remote backend?
+
Remote backend stores Terraform state in a remote location for
team collaboration.
Remote State?
+
Remote state stores the Terraform state file in a shared
backend such as S3, Azure Blob, or Terraform Cloud. It helps in collaboration among
multiple users. Remote state also supports encryption, locking, and versioning. This
avoids conflicts and corrupt state files.
State in Terraform?
+
Terraform state stores metadata and resource deployment
details. It tracks resource mapping between configuration and actual cloud
infrastructure. The state file is critical for operations like update, destroy, and
plan. You can store it locally or remotely.
State Locking in Terraform?
+
State locking prevents simultaneous modifications to the same
state file by multiple users. It ensures consistency during execution. Tools like
DynamoDB or Terraform Cloud handle locking. Without locking, infrastructure may
become corrupted.
Tainting in Terraform?
+
Tainting marks a resource for forced recreation on the next
apply. Use terraform taint to apply it. Useful for broken or manually modified
infrastructure. It triggers destruction and recreation.
Terraform apply -auto-approve?
+
Applies changes without prompting for user confirmation.
Terraform apply?
+
terraform apply creates or updates resources as per
configuration. It executes approved actions shown from the plan. You may
auto-approve using -auto-approve. It updates the Terraform state file after
execution.
Terraform backend types?
+
Backend types include local S3 AzureRM GCS Consul and Terraform
Cloud.
Terraform Backend?
+
A backend determines how state is loaded and where it is
stored. Examples include local filesystem or remote backends like S3 and Azure Blob.
Backends also support locking and encryption. They improve collaboration in teams.
Terraform best practices?
+
Use modules version control remote state variables outputs and
avoid hardcoding sensitive data.
Terraform cloud agent?
+
Cloud agent allows Terraform Cloud to manage infrastructure in
private networks.
Terraform Cloud?
+
Terraform Cloud is a SaaS platform for collaborative Terraform
workflows state management and policy enforcement.
Terraform count?
+
Count allows creating multiple instances of a resource based on
a number.
Terraform data source?
+
Data source fetches information about existing infrastructure
for use in configurations.
Terraform dependency graph?
+
Graph shows dependencies between resources for execution
planning.
Terraform dependency?
+
Dependency defines the order of resource creation based on
references between resources.
Terraform destroy -target vs apply -destroy?
+
Destroy-target removes specific resources; apply -destroy
removes all resources.
Terraform destroy?
+
terraform destroy removes resources managed by Terraform. It
reads the state file and destroys the corresponding cloud infrastructure. Useful for
testing environments. It prevents leftover idle cloud resources.
Terraform destroy-target?
+
Destroy-target removes specific resources instead of the entire
infrastructure.
Detects infrastructure changes made outside Terraform.
Terraform drift?
+
Drift occurs when infrastructure changes outside Terraform
causing state mismatch.
Terraform dynamic block?
+
Dynamic block allows generating multiple nested blocks
dynamically in a resource.
Terraform Enterprise?
+
Terraform Enterprise is a self-managed version of Terraform
Cloud for organizations.
Terraform fmt?
+
terraform fmt automatically formats Terraform code style. It
ensures consistent formatting for readability and maintainability. This command is
especially useful in team environments. It follows official formatting rules.
Terraform for_each?
+
For_each iterates over a map or set to create multiple
resources with unique identifiers.
Terraform function types?
+
Function types include string numeric collection date encoding
file and type conversion.
Terraform functions?
+
Functions perform operations on strings numbers lists maps and
other data types.
Terraform graph?
+
Graph generates a visual representation of resources and their
dependencies.
Terraform HCL?
+
HCL stands for HashiCorp Configuration Language used to define
infrastructure. It is human-readable and JSON-compatible. It supports variables,
modules, conditionals, and loops. Terraform scripts are written in HCL.
Terraform import limitations?
+
Import cannot automatically generate full configuration; manual
resource definition is required.
Terraform import state?
+
Terraform import updates state file to track existing
resources.
Terraform import?
+
Terraform import brings existing infrastructure under Terraform
management.
Terraform init?
+
terraform init initializes a working directory with Terraform
configuration files. It installs necessary providers and modules. It must be run
first before applying configuration. It ensures all dependencies are downloaded.
Terraform interpolate?
+
Interpolate computes expressions using variables resources or
functions.
Terraform interpolation functions?
+
Functions manipulate data e.g. concat join length lookup lower
upper.
Terraform interpolation syntax?
+
Syntax uses ${} to reference variables outputs or resource
attributes.
Terraform interpolation?
+
Interpolation allows using expressions variables and functions
within configuration files.
Terraform lifecycle?
+
Lifecycle allows customizing resource behavior including
create_before_destroy and prevent_destroy.
Terraform local values?
+
Local values store intermediate expressions or computed values
for reuse.
Terraform local-exec vs remote-exec?
+
Local-exec runs locally; remote-exec runs on the resource
instance.
Terraform main.tf?
+
Main.tf contains the main Terraform configuration for
resources.
Terraform module registry?
+
Module registry hosts reusable modules for public or private
use.
Terraform module source?
+
Source specifies the location of a module e.g. local path Git
repository or registry.
Terraform Module?
+
A module is a container for multiple Terraform resources used
together. It promotes reusability, structure, and automation. Modules can be local,
public (Terraform Registry), or shared within a team. They help maintain consistency
across environments.
Terraform nested modules?
+
Nested modules are modules called from within another module
for hierarchical organization.
Terraform null resource?
+
Null resource is a placeholder resource used for executing
provisioners without creating actual infrastructure.
Terraform output sensitive?
+
Marks output as sensitive to hide values in CLI or UI.
Terraform output?
+
Output defines values to display after Terraform apply often
used for module outputs or sharing data.
Terraform outputs vs locals?
+
Outputs expose data outside; locals store data internally for
reuse.
Terraform outputs.tf?
+
Outputs.tf defines output values to be displayed after apply.
Terraform plan destroy?
+
Generates a plan to destroy all managed resources.
Terraform plan -out?
+
Saves the execution plan to a file for later apply.
Terraform plan vs apply?
+
Plan shows proposed changes; apply executes those changes.
Terraform plan?
+
terraform plan previews the execution steps without making real
changes. It shows additions, updates, and deletions. It helps validate configuration
before deployment. This step is recommended before running terraform apply.
Terraform provider alias?
+
Provider alias allows using multiple configurations of the same
provider in a module.
Terraform provider versioning?
+
Provider versioning specifies compatible versions of providers
to avoid breaking changes.
Terraform provider?
+
A provider is a plugin that allows Terraform to interact with
APIs of cloud platforms and services.
Terraform providers.lock?
+
Lock file records provider versions used to ensure consistent
runs.
Terraform providers.tf?
+
Providers.tf specifies which providers and versions to use in
the configuration.
Terraform provisioner order?
+
Provisioners run in the order defined after resource creation.
Terraform provisioners?
+
Provisioners execute scripts or commands on a resource after
creation.
Terraform refresh vs plan?
+
Refresh updates state file from real infrastructure; plan shows
planned changes based on state.
Terraform refresh?
+
terraform refresh updates the state file with real
infrastructure values. It detects drift but does not change actual infrastructure.
Helps synchronize Terraform state with reality. Deprecated in newer versions as
terraform plan does similar work.
Terraform Registry?
+
Terraform Registry is a public library of reusable modules and
providers. It encourages best practices by offering community and official modules.
Users can search, download, and integrate modules easily. This reduces development
time and errors.
Terraform remote state?
+
Remote state stores Terraform state in shared storage for team
collaboration.
Terraform resources?
+
Resources represent components of infrastructure like servers
databases or network configurations.
Terraform security practices?
+
Use remote state with encryption sensitive variables least
privilege IAM and secret management.
Terraform sensitive variable?
+
Sensitive variable hides its value in logs and outputs to
protect secrets.
Terraform Sentinel?
+
Sentinel is a policy-as-code framework to enforce compliance
rules in Terraform Enterprise.
Terraform state locking?
+
State locking prevents concurrent Terraform operations to avoid
conflicts.
Terraform state mv?
+
Moves a resource in state file for renaming or restructuring
resources.
Terraform state pull?
+
Pulls the current state from backend for inspection.
Terraform state push?
+
Push updates state to remote backend manually (legacy).
Terraform state rm?
+
Removes a resource from state file without destroying
infrastructure.
Terraform state?
+
Terraform state stores metadata about deployed infrastructure
and maps resources to real-world objects.
Terraform support Multi-Cloud?
+
Terraform supports multiple cloud providers using provider
plugins. One configuration can build infrastructure across AWS, Azure, and GCP. It
allows avoiding vendor lock-in and simplifies hybrid cloud deployments.
Taint marks a resource for recreation during the next apply.
Terraform terraform fmt -check?
+
Checks whether configuration files conform to Terraform style
conventions.
Terraform terraform validate -json?
+
Outputs validation results in JSON format for automated checks.
Terraform untaint?
+
Untaint removes the taint and prevents resource recreation.
Terraform upgrade?
+
Upgrade updates provider plugins to newer versions.
Terraform validate?
+
terraform validate checks the syntax correctness of
configuration files. It doesn't check authentication or existence of remote
resources. It prevents applying invalid configuration. Use before plan or apply.
Terraform variable?
+
Variable is a way to parameterize Terraform configurations for
flexibility.
Terraform variables.tf?
+
Variables.tf defines variables and default values for Terraform
configuration.
Terraform version constraint?
+
Version constraint specifies the acceptable versions of
Terraform or providers.
Terraform workspace list?
+
Lists all available workspaces in Terraform.
Terraform workspace new?
+
Creates a new workspace in Terraform for managing separate
infrastructure instances.
Terraform workspace select?
+
Select switches to an existing workspace for operations.
Terraform workspace vs backend?
+
Workspace isolates instances of infrastructure; backend manages
where state is stored.
Terraform workspace vs environment?
+
Workspace manages multiple instances of the same
infrastructure; environment often refers to dev staging prod setups.
Terraform Workspace?
+
Workspaces allow managing multiple environments (dev, test,
prod) with one configuration. Each workspace has an independent state. Useful for
modular and scalable management. Use local or remote workspace management.
Terraform workspaces default?
+
Default workspace is always created and cannot be deleted.
Terraform?
+
Terraform is an open-source Infrastructure as Code (IaC) tool
developed by HashiCorp. It allows you to define, provision, and manage cloud
resources using code. Configuration is written in HCL (HashiCorp Configuration
Language). It supports multiple cloud providers like AWS, Azure, and GCP.
Types of Terraform variables?
+
Types include string number bool list map and object.
You use Terraform Cloud?
+
Terraform Cloud is used for collaboration, automation,
versioning, and secure remote backends. It supports policy-as-code, multi-user
workflows, and state locking. Ideal for teams managing enterprise infrastructure.
Top 100 IQA
+
Api gateway and why is it used?
+
An API Gateway acts as a single entry point for microservices.
It handles routing, authentication, throttling, caching, and API aggregation. It
improves performance, security, and simplifies communication between clients and
backend services.
Api throttling and rate limiting?
+
API throttling restricts the number of requests a client can
make in a given timeframe to prevent misuse or overload., It ensures fair usage and
protects backend performance., Tools like Azure API Management, Kong, and NGINX
implement rate limiting easily.
Azure devops pipeline?
+
Azure DevOps pipeline automates CI/CD processes including
build, test, packaging, and deployment. It supports YAML-based configuration,
approvals, artifacts, and integration with cloud platforms. It improves delivery
speed and consistency across environments.
Blue-green deployment?
+
Blue-Green deployment maintains two environments: Blue (current
live) and Green (new release)., Traffic switches to Green after verification,
reducing downtime and deployment risk., If issues occur, rollback is quick by
routing back to Blue.
Caching strategy?
+
A caching strategy defines how and when data is stored and
retrieved from cache to improve speed and reduce server load., Strategies include
in-memory cache, distributed cache, response caching, and output caching., Cache
expiration policies include sliding, absolute, and cache invalidation rules.
Canary release?
+
Canary release gradually exposes new features to a small user
segment before full rollout., It helps detect issues early with minimal impact.,
This approach is widely used in cloud platforms and microservice deployments.
Cap theorem?
+
CAP Theorem states that in distributed systems, it’s impossible
to guarantee all three at once:, Consistency, Availability, and Partition
Tolerance., Systems must choose between CP or AP depending on design priorities.
Ci/cd and you implement it?
+
CI/CD automates code build, testing, deployment, and delivery.
Tools like Azure DevOps, GitHub Actions, or Jenkins implement pipelines for
consistent and controlled deployment. It reduces risks, speeds delivery, improves
code quality and supports DevOps culture.
Circuit breaker pattern?
+
The circuit breaker prevents repeated calls to failing services
by temporarily blocking execution., It protects the system from cascading failures
and improves resilience., Implementations include Polly (.NET), Resilience4j, and
Netflix Hystrix.
Clean architecture?
+
Clean Architecture separates an application into layers such as
Domain, Application, Infrastructure, and UI., It focuses on independence of
frameworks, databases, and UI technologies., The core business logic remains
isolated, leading to maintainable, testable, and scalable systems.
Consider key qualities of a great software architect?
+
A great architect balances technical depth, business
understanding, communication, and strategic thinking. They design scalable systems,
mentor teams, drive standards, and anticipate future needs. They make pragmatic
decisions—not just ideal ones—and ensure long-term sustainability. Leadership,
empathy, and adaptability define success.
Container orchestration?
+
Container orchestration automates deployment, scaling, health
checks, and networking of containerized applications., It ensures reliability,
self-healing, and efficient resource utilization., Kubernetes, AWS ECS, Docker
Swarm, and Azure Kubernetes Service are common solutions.
Containerization and why use docker?
+
Containerization packages applications and dependencies into
isolated, portable units. Docker ensures consistent environment behavior across dev,
test, and production. It improves deployment speed, version control, scalability,
and microservices hosting.
Cqrs (command query responsibility segregation)?
+
CQRS separates read and write operations into different models
to improve scalability and performance., Commands modify data, while queries return
data without altering state., It’s often used with event sourcing and distributed
microservice architectures.
Cqrs and why is it used?
+
CQRS separates read and write operations into different models
to improve performance and scalability. Queries do not modify data, while commands
handle state changes. It is commonly used in event-driven and distributed systems
where scalability and auditability are priorities.
Dependency injection and is it implemented in .net core?
+
Dependency injection provides loose coupling by injecting
required services instead of creating them manually. .NET Core has a built-in DI
container configured in Startup.cs using AddTransient, AddScoped, and AddSingleton.
It improves testability, maintainability, and modular design.
Dependency injection?
+
Dependency Injection is a design pattern where objects receive
required dependencies from an external source rather than creating them internally.,
It improves flexibility, testability, and loose coupling., Common DI containers
include .NET Core built-in DI, Autofac, Unity, and Ninject.
Deployment pipeline?
+
A deployment pipeline automates the stages of building,
testing, and deploying code changes., It ensures repeatability, reduces errors, and
supports continuous delivery., Tools include Azure DevOps, GitHub Actions, Jenkins,
and GitLab CI/CD.
Describe zero downtime deployment.
+
Zero-downtime deployment ensures the application remains
available during updates. Techniques include blue-green deployment, rolling updates,
or canary releases. Kubernetes and CI/CD pipelines automate traffic shifting and
update rollback. This approach improves user experience and supports safe delivery.
Design system in software development?
+
A design system standardizes UI components, patterns, and best
practices across applications for consistency., It includes reusable components,
accessibility rules, themes, typography, and UX guidelines., Libraries like Material
Design, Bootstrap, and custom enterprise design systems are common examples.
Diffbet horizontal and vertical scaling?
+
Vertical scaling increases resources on a single machine (CPU,
RAM), while horizontal scaling adds more machines or instances., Horizontal scaling
supports distributed workload and high availability., Modern cloud environments
prefer horizontal scaling due to flexibility and cost efficiency.
Diffbet rest api and grpc?
+
REST uses JSON over HTTP and is best for public APIs with human
readability and flexibility. gRPC uses protocol buffers and HTTP/2, offering high
performance, low latency, and bidirectional streaming. gRPC is suitable for
microservice communication, while REST is easier for integration with external
systems.
Diffbet vertical scaling and horizontal scaling?
+
Vertical scaling adds more power (CPU/RAM) to an existing
server. Horizontal scaling adds more instances to distribute load and improve
redundancy. Horizontal scaling is more cost-effective in distributed systems and
aligns with microservices and Kubernetes scaling models. Modern cloud-native systems
primarily prefer horizontal scaling.
Distributed caching and when do you use it?
+
Distributed caching stores frequently accessed data in an
external cache like Redis or NCache. It improves application performance and reduces
database load in high-traffic environments. Useful in cloud platforms,
microservices, and load-balanced applications.
Distributed caching?
+
Distributed caching stores data across multiple servers or
nodes instead of local memory., It enables faster access, fault tolerance, and
scalability in large applications., Popular solutions include Redis, NCache, Azure
Cache for Redis, and Memcached.
Does garbage collection work and you optimize it?
+
GC automatically releases unused objects from memory using
generations (Gen0, Gen1, Gen2). Optimization includes reducing unnecessary
allocations, using using statements for unmanaged resources, pooling reusable
objects, and avoiding boxing. Profiling tools can help detect memory leaks and
fragmentation.
Domain-driven design (ddd) and when do you apply it?
+
DDD models the software based on real business domains using
concepts like bounded context, aggregates, value objects, and ubiquitous language. I
apply DDD in complex enterprise systems where rules and processes evolve. It
improves modularity, scalability, and team collaboration between business and
engineering.
Domain-driven design (ddd)?
+
DDD focuses on aligning software design with business domains.
It uses bounded contexts, aggregates, entities, value objects, and domain events. It
helps manage complexity in large-scale systems and ensures business logic is clearly
separated from infrastructure concerns.
Entity framework core and where is it useful?
+
Entity Framework Core is a lightweight ORM supporting LINQ
queries, migrations, and multi-database support (SQL Server, PostgreSQL, MySQL). It
automates CRUD operations and reduces data access boilerplate. It’s useful for rapid
development, modern applications, and microservices.
Event sourcing?
+
Event sourcing stores changes in an application as events
rather than saving only the latest data state., It provides full audit history,
rollback capability, and replay functionality., It is frequently paired with CQRS
and message brokers like Kafka.
Event-driven architecture?
+
Event-driven architecture uses events as the primary means of
communication between components. Services react to events produced by others using
event brokers like Kafka or Event Grid. It supports real-time processing,
scalability, and loose coupling.
Eventual consistency?
+
Eventual consistency means the system may not be immediately
synchronized but will become consistent over time., It is common in distributed
databases like Cassandra, Cosmos DB, and DynamoDB., It supports availability and
scalability at the cost of temporary inconsistency.
Explain async/await and it improves scalability.
+
async and await enable non-blocking operations, allowing the
thread to continue execution while waiting for I/O or network operations. This
reduces thread consumption and improves scalability under high load. It is essential
for microservices, API calls, and cloud applications.
Explain solid principles with examples in c#.
+
SOLID principles promote clean, maintainable, and flexible
architecture. Example: Single Responsibility—a class should perform only one task.
Dependency Inversion—depend on abstractions, not concrete classes, implemented using
interfaces and DI. Applying SOLID ensures better scaling and testing.
Explain value types vs reference types.
+
Value types store data directly in memory and are stored on
stack, while reference types store a pointer to the memory location on heap. Value
types are faster and do not support null unless nullable. Reference types support
garbage collection and can store null. Examples: int (value type), class (reference
type).
Horizontal vs vertical scaling?
+
Vertical scaling increases the power of a single server (CPU,
RAM), while horizontal scaling adds more servers or nodes to distribute load.
Horizontal scaling is preferred in microservices and cloud deployments for
resilience and elasticity. Vertical scaling is simpler but limited.
Infrastructure as code (iac)?
+
IaC automates provisioning and configuration of infrastructure
using scripts or declarative templates., It ensures consistency, reduces manual
errors, and supports version control., Tools include Terraform, ARM templates,
Pulumi, and Ansible.
Jwt (json web token)?
+
JWT is a compact, signed token format used for secure stateless
authentication. It contains header, payload (claims), and signature. The server does
not store session data, making it ideal for distributed and microservice
architectures.
Kubernetes and why use it?
+
Kubernetes is an orchestration platform for running and
managing containerized applications. It handles scaling, deployment, self-healing,
load balancing, and rolling updates. It’s ideal for microservices, distributed
systems, and auto-scaling cloud environments.
Latency vs throughput?
+
Latency is the time taken to process a single request, while
throughput is the number of requests handled per second., Low latency improves
response times, while higher throughput improves overall capacity., Both are key
performance metrics in distributed systems.
Load balancing?
+
Load balancing distributes incoming requests across multiple
servers to improve performance and reliability., It prevents overload, supports
redundancy, and ensures high availability., Examples include Azure Load Balancer,
NGINX, AWS ELB, and HAProxy.
Major improvements from .net framework to .net core/.net 8?
+
.NET Core/.NET 8 offers cross-platform support, lightweight
deployment, higher performance, and modular architecture through NuGet packages. It
includes built-in dependency injection, unified platform for APIs, desktop, cloud
and mobile. It also provides better memory management, container support, and faster
runtime optimizations.
Message broker?
+
A message broker facilitates communication between distributed
services using asynchronous messaging., It improves decoupling, reliability, and
scalability., Examples include RabbitMQ, Azure Service Bus, Kafka, and AWS SQS.
Message queueing and why use it?
+
Message queuing allows asynchronous communication between
application components using brokers like RabbitMQ, Kafka, or Azure Service Bus. It
improves reliability, scalability, and decouples services. It ensures message
persistence even if one system is temporarily unavailable.
Microservices architecture?
+
Microservices break applications into small, independently
deployable services. Each service owns its data and domain logic and communicates
via APIs, messaging, or event bus. Benefits include scalability, independent
deployment, fault isolation, and technology flexibility.
Middleware in asp.net core?
+
Middleware is software pipeline components that process HTTP
requests and responses. Each middleware can perform logic and optionally pass
control to the next component. Examples include authentication, logging, CORS,
exception handling, and routing. Middleware is registered in the Configure() method
using app.Use() or app.Run().
Monolithic application?
+
A monolithic application is a single, tightly coupled unit
where all modules are packaged and deployed together., It is simple to build
initially but becomes harder to maintain and scale as the system grows., It lacks
flexibility for independent deployment or technology diversification.
Oauth 2.0?
+
OAuth 2.0 is an authorization framework used to grant secure
access to APIs without sharing credentials. It supports flows like Client
Credentials, Authorization Code, and Refresh Tokens. It’s widely used with modern
identity servers and cloud platforms.
Observability?
+
Observability is the ability to monitor a system through logs,
metrics, and traces to understand behavior in production., Tools like Prometheus,
Grafana, Elastic Stack, and Azure Monitor help track performance and detect
failures., It supports faster troubleshooting and improves system reliability.
Openid connect?
+
OpenID Connect extends OAuth 2.0 to provide authentication
along with authorization. It issues ID Tokens (JWT) containing user identity claims.
It’s used with platforms such as Azure AD, Google Identity, or Auth0 for SSO and
secure login.
Records vs classes?
+
Records are designed for immutable data and value-based
equality, meaning two records with same values are considered equal. Classes are
reference-based and equality checks memory references. Records simplify DTOs,
functional patterns, and serialization scenarios.
Reflection and when would you use it?
+
Reflection enables inspecting metadata and dynamically invoking
types and methods at runtime. It is used in frameworks, serialization, IoC
containers, plugin systems, and ORMs. However, it should be used sparingly because
it impacts performance.
Repository pattern?
+
The Repository Pattern abstracts data access logic and provides
a cleaner way to interact with databases., It hides implementation details from
business logic and supports testing through mockable interfaces., It helps maintain
separation of concerns and improves maintainability.
Resiliency in software architecture?
+
Resiliency ensures that a system can recover gracefully from
failures and continue functioning., Patterns like retry, circuit breaker, failover,
and load balancing support resiliency., It’s crucial for large-scale distributed and
cloud-native applications.
Reverse proxy?
+
A reverse proxy sits between clients and backend services,
forwarding requests securely., It supports caching, SSL termination, routing, and
traffic control., NGINX, Apache, Cloudflare, and Traefik are widely used reverse
proxies.
Role does automation play in your architecture strategy?
+
Automation accelerates delivery, improves consistency, and
reduces human error. CI/CD pipelines, IaC, automated testing, and deployment
workflows support repeatability and governance. Observability tools help automate
alerts and remediation. Automation ensures scalable, self-healing, and predictable
operations.
Service registry?
+
A service registry stores addresses of microservices and
enables dynamic service discovery., It removes the need for hard-coded URLs and
supports auto-scaling., Examples include Consul, Eureka, and Kubernetes service
discovery.
Solid in software architecture?
+
SOLID is a set of five design principles that improve code
maintainability and scalability:, Single Responsibility, Open/Closed, Liskov
Substitution, Interface Segregation, and Dependency Inversion., These principles
help create loosely coupled, testable, and extensible software systems commonly
applied in enterprise design.
Span and memory in .net?
+
Span provides a type-safe, high-performance way to work with
contiguous memory (arrays, buffers) without copying data. It improves
performance in large processing operations like parsing or serialization. Memory
is similar but supports asynchronous and long-lived memory usage, unlike
Span which is stack-only.
Steps do you take to ensure secure application design?
+
Security is incorporated from the design stage using threat
modeling, OWASP principles, and least privilege access. Encryption, secure
authentication, and centralized secret storage protect sensitive data. Automated
vulnerability scanning and penetration testing ensure early detection. Governance
policies ensure compliance across environments.
Strategies do you use to optimize cloud costs?
+
I analyze compute utilization, scale resources dynamically, and
adopt reserved or spot instances where feasible. Serverless and container
orchestration help reduce idle consumption. Cost dashboards, tagging policies, and
automated budget alerts improve transparency. Regular cost reviews ensure alignment
with business growth.
Swagger/openapi?
+
Swagger/OpenAPI is a specification for documenting REST APIs.,
It provides a UI to test endpoints, generate code, and share API contracts.,
Frameworks like Swashbuckle or NSwag integrate it easily with .NET applications.
Unit of work pattern?
+
Unit of Work coordinates changes across multiple repositories
and saves updates as a single transaction., It ensures consistency and rollback
support if any operation fails., Often used with ORMs like Entity Framework.
Implement thread safety?
+
Thread safety can be achieved using locking (lock, Monitor,
Mutex), immutable objects, thread-safe collections (ConcurrentDictionary), or atomic
operations using Interlocked. Correct choice depends on the performance requirements
and contention level.
You align architecture decisions with business goals?
+
Architecture decisions start with understanding business
priorities, vision, and measurable outcomes. I translate these into guiding
principles, solution patterns, and implementation standards. Regular reviews with
stakeholders ensure alignment throughout delivery. Metrics validate that
architecture delivers business value.
You approach technical debt management in large-scale
projects?
+
I categorize technical debt into intentional, unavoidable, and
harmful debt. Debt is documented, prioritized, and planned into sprints using a debt
register. I balance delivery with refactoring through continuous improvement and CI
tooling. Automated linting, architectural reviews, and measurable quality gates
ensure the debt does not grow uncontrolled.
You decide whether to build or buy a solution?
+
I evaluate based on business value, time-to-market,
maintainability, cost, extensibility, and compliance requirements. If a commercial
solution meets >80% of use cases and is cost-efficient, buying is preferred. Custom
development is chosen when differentiation or deep integration is required.
Stakeholder approval and risk assessment finalize the decision.
You design apis that are scalable and future-proof?
+
I follow RESTful or event-driven patterns and ensure APIs are
versioned, lightweight, and consistent. Clear standards for validation, error
handling, pagination, and rate limiting are enforced. Documentation through
OpenAPI/Swagger ensures clarity. Backward compatibility and loose coupling support
future growth.
You ensure backward compatibility during upgrades?
+
Backward compatibility is handled using versioning, feature
toggles, and rollout strategies like canary or staged deployments. I maintain dual
support during transitions and deprecate outdated functionality gradually. Automated
regression testing validates expected behavior. Documentation and communication with
stakeholders ensure smooth adoption.
You ensure compliance and governance in enterprise solutions?
+
Compliance is embedded through secure coding standards, audit
trails, and encryption policies. RBAC, IAM frameworks, and automated compliance
validation tools ensure restricted access. I align with ISO, GDPR, SOC2, or HIPAA
depending on the domain. Documentation, monitoring, and periodic audits ensure
ongoing adherence.
You ensure disaster recovery and business continuity?
+
I implement redundancy through multi-region deployments,
automated backups, replication, and failover policies. Recovery objectives (RPO/RTO)
guide architecture decisions. Regular DR drills and documentation validate
readiness. Observability and automated orchestration ensure smooth recovery with
minimal downtime.
You ensure quality during rapid development cycles?
+
I enforce CI/CD with automated testing, code reviews, and
standardized coding practices. QA shifts left with unit, integration, and
performance testing early in the pipeline. Feature toggles and progressive
deployment reduce risk. Quality metrics like defect rate and test coverage guide
improvements.
You ensure secure api design in enterprise applications?
+
I enforce authentication (OAuth2, JWT, OpenID Connect) and
authorization (RBAC/ABAC). Data encryption is applied in transit (TLS) and at rest.
APIs follow least-privilege principles, rate limiting, input validation, and threat
modeling such as OWASP API Top 10. API gateways enforce governance and auditing.
You evaluate and adopt new technologies as a tech lead?
+
I evaluate feasibility through PoCs, cost analysis, security
compliance, and alignment with business goals. Community maturity, vendor support,
and integration compatibility guide selection. Stakeholders and teams are included
early to validate fit. Adoption follows a controlled rollout plan, including
training and documentation.
You evaluate new technologies before adopting them?
+
I assess maturity, vendor support, community adoption,
integration effort, and long-term viability. Proof-of-concepts and pilot testing
validate performance, scalability, and maintainability. Risks are reviewed with
stakeholders before rollout. The decision aligns with business goals and existing
technology strategy.
You evaluate whether a project should use microservices or
monolithic architecture?
+
I assess complexity, scalability needs, domain independence,
deployment frequency, and team maturity. For small systems with tight coupling,
monoliths may be ideal. Microservices fit large, scalable, independently deployable
domain-driven systems. Decision factors include operational cost, performance, and
business evolution.
You handle conflicts between business requirements and
technical constraints?
+
I facilitate discussions to explain trade-offs, risks, and
impacts using clear language. Alternatives are presented with estimated cost, time,
and performance implications. The final decision is aligned with business priorities
while ensuring technical feasibility. Documentation ensures traceability and
accountability.
You handle failures in distributed systems?
+
I design with fault tolerance using retries, exponential
backoff, circuit breakers, and idempotent operations. Distributed tracing and
observability help isolate issues quickly. Graceful degradation ensures partial
system availability during failures. Chaos testing is used to validate resilience
strategies.
You handle technical debt in ongoing development cycles?
+
Technical debt is documented, prioritized, and tracked like any
backlog item. Regular refactoring sprints, code reviews, automation, and
architectural governance help reduce its growth. Balancing feature delivery and debt
cleanup ensures long-term maintainability. Metrics such as code quality scans
(SonarQube) guide decision-making.
You implement disaster recovery in enterprise platforms?
+
Disaster recovery involves defining RTO/RPO objectives and
implementing data backup strategies like incremental and geo-redundant replication.
Failover clusters, automated restoration scripts, and periodic DR drills ensure
readiness. Infrastructure as Code helps recreate environments quickly. Monitoring
ensures early detection of failures.
You implement logging and monitoring in distributed
cloud-native architectures?
+
Logging and monitoring are implemented using centralized tools
like ELK, Prometheus, Loki, Application Insights, or Grafana. Structured logs and
trace IDs ensure traceability across microservices. Metrics, logs, and health checks
integrate with alerting systems for proactive detection. Observability focuses on
three pillars: logs, metrics, and traces.
You manage breaking changes in api and platform updates?
+
Breaking changes are handled using semantic versioning,
backward compatibility strategies, and feature toggle approaches. API consumers are
notified through documentation and change logs. Deprecation policies with timelines
ensure smooth migration without disruption. Testing and sandbox environments help
validate client readiness.
You manage configuration and secret lifecycle in cloud-native
systems?
+
Configurations are externalized using ConfigMaps and
environment variables, while secrets are stored securely using Vault, Azure Key
Vault, or Kubernetes Secrets. Rotation policies, RBAC, and audit logs ensure
compliance and protection. CI/CD pipelines inject values at runtime without exposing
them in code. Automated renewal supports long-term security.
You manage cross-team collaboration in distributed agile
environments?
+
I implement clear communication channels using tools like Jira,
Confluence, MS Teams, or Slack. Shared standards, integration checkpoints, and
architectural alignment meetings prevent fragmentation. Dependencies are managed via
SAFe, Scrum of Scrums, or PI planning. Transparency, respect, and shared goals
ensure alignment and delivery efficiency.
You manage environment consistency from development to
production?
+
Environment consistency is achieved using containerization
(Docker), Infrastructure as Code (Terraform), and CI/CD pipelines. Configuration is
externalized using ConfigMaps, Secrets, and environment variables. Automated testing
and deployment prevent human errors and help maintain parity. Version-controlled
configuration ensures auditability.
You manage platform modernization or legacy migration
projects?
+
I begin with a system assessment and define a phased
modernization roadmap (strangler pattern, rehosting, refactoring, or rebuilding).
Coexistence strategies reduce risk during migration. Automated testing and CI/CD
pipelines support safe transitions. Stakeholder alignment and milestone tracking
ensure predictable delivery.
You measure the success of a software project?
+
Success is measured through delivery metrics (velocity, lead
time), performance KPIs (scalability, reliability), and business outcomes such as
user adoption and ROI. Stakeholder satisfaction and system maintainability are also
considered. Continuous feedback loops ensure alignment between delivery and value.
You mentor and grow engineering teams?
+
I mentor through pair programming, design reviews, and
knowledge-sharing sessions. Clear role expectations, individual growth plans, and
constructive feedback help build capability. I encourage autonomy while providing
support when needed. Recognition and psychological safety promote team engagement
and innovation.
You support continuous improvement in engineering teams?
+
I promote knowledge sharing through code reviews, architecture
reviews, workshops, and mentorship. Retrospectives help identify actionable
improvements. Metrics such as deployment frequency, cycle time, and quality
baselines help measure progress. A culture of learning and experimentation drives
long-term excellence.
You validate system performance before production deployment?
+
Performance validation includes load testing, stress testing,
endurance testing, and capacity planning. Tools like JMeter, Gatling, or Azure Load
Testing simulate real workloads. I analyze bottlenecks using metrics such as
response time, throughput, and error rate. Optimization cycles continue until SLAs
and KPIs are met.
Your approach to designing highly available systems?
+
I design for redundancy across layers—load balancers, stateless
services, and replicated databases. Multi-zone or multi-region deployment achieves
fault tolerance. Health checks, auto-healing, and failover mechanisms ensure
resilience. Monitoring and automated scaling guarantee uninterrupted service even
during peak loads or failures.
Your approach to designing scalable database architectures?
+
I choose scaling strategy based on workload—vertical scaling,
replication, or sharding. Proper indexing, caching, CQRS, and read-write separation
improve performance. Event-driven systems reduce transactional coupling. Monitoring
slow queries and automated maintenance tasks ensure long-term efficiency.
Your approach to handling application performance bottlenecks?
+
I begin by profiling the application using tools like
Application Insights, Dynatrace, or dotTrace to identify bottlenecks. Next, I
optimize queries, caching, resource usage, and code logic. If needed, I scale
infrastructure horizontally using Kubernetes or autoscaling groups. Continuous
monitoring ensures the issue remains resolved.
Your approach to managing stakeholder expectations?
+
I maintain continuous communication through demos, sprint
reviews, and transparent reporting tools. Scope, timelines, and dependencies are
clearly documented to avoid surprises. Risks and blockers are escalated early, and
alternatives are discussed collaboratively. Alignment is ensured through measurable
success criteria.
Your approach to monitoring and observability in complex
systems?
+
I implement end-to-end observability using metrics, logs, and
distributed tracing via tools like Grafana, Kibana, and Prometheus. Alerts are
configured based on SLAs and business KPIs, not just infrastructure signals.
Dashboards enable real-time insights and faster root-cause analysis. Continuous
refinement ensures relevance as systems evolve.
Your leadership style as a technical lead or architect?
+
My leadership style is collaborative, transparent, and
outcome-driven. I empower teams by providing clarity, removing blockers, and
enabling autonomy. Decisions are guided by data, architectural principles, and
business goals. I focus on mentorship and building a culture of trust, ownership,
and innovation.
Your strategy for breaking large legacy systems into
microservices?
+
I start with domain analysis and identify bounded contexts
using DDD. Strangler pattern, API gateways, and event-driven workflows help migrate
incrementally without disruption. Data models are split and decoupled with messaging
systems like Kafka or RabbitMQ. Continuous monitoring and iteration ensure stability
and alignment with business goals.
Zero downtime deployment?
+
Zero Downtime Deployment ensures the system stays operational
during software updates., Techniques like blue-green deployment, rolling updates,
and canary releases are commonly used., It improves user experience and prevents
business interruptions during releases.
TypeScript
+
.ts vs .tsx
+
.ts is standard TypeScript, .tsx supports JSX for React
projects.
Access modifiers in TypeScript?
+
public, private, protected specify visibility of class members.
Advantages of TypeScript
+
Strong typing, better tooling, compile-time error checking, and
improved maintainability.
Advantages of TypeScript?
+
Static typing, better tooling, early error detection, improved
readability, and support for modern JS features.
Ambient declarations in TypeScript?
+
Ambient declarations (declare) describe the types of code that
exists elsewhere, like JS libraries.
Ambient module declaration?
+
declare module 'moduleName' defines types for external
libraries without implementation.
Anonymous functions and uses.
+
Anonymous functions have no name and are assigned to variables
or used as callbacks. Example:, const sum = function(a,b){ return a+b };, They
support functional programming and event handling.
Any type in TypeScript?
+
any allows a variable to hold values of any type and disables
type checking.
Any type?
+
any disables type checking and allows storing any value. Useful
during migration from JavaScript.
Arrays behavior
+
Arrays must use defined element types:, let numbers: number[] =
[1,2,3];
Yes, using super() inside the child constructor. It must be
called before accessing this.
Classes in TypeScript?
+
Classes are templates for creating objects with properties and
methods.
Combine multiple TS files into one JS file.
+
Use tsconfig.json settings like "outFile": "bundle.js", and set
"module": "amd" or "system". Then compile using tsc.
Compile TypeScript
+
Run: tsc filename.ts
Compile TypeScript file?
+
Use the command:, tsc filename.ts, If using a project, simply
run tsc.
Conditional types in TypeScript?
+
Conditional types select type based on condition: T extends U ?
X : Y.
Conditional typing.
+
Conditional types evaluate types based on conditions using
syntax:, T extends U ? X : Y, Used in mapped types and generics.
ConstructorParameters utility type?
+
Infers types of constructor parameters of class T.
Contextual typing in TypeScript?
+
Type is inferred from the context, such as function argument or
assignment.
Convert .ts to .d.ts.
+
Use tsc --declaration option in compiler settings or CLI. It
generates type definition files.
Data types in TypeScript
+
TypeScript has built-in types (string, number, boolean, void,
null), and user-defined types (enums, classes, interfaces, and tuples). These
enforce type safety at compile time.
Debug TypeScript?
+
Compile TypeScript with sourceMap enabled in tsconfig.json.
Debug using browser dev tools, VS Code, or Node with breakpoints mapped to
TypeScript instead of generated JavaScript.
Declaration merging in TypeScript?
+
Multiple declarations with same name (interface or namespace)
are merged into a single definition.
Declare a class?
+
class Person {, constructor(public name: string) {}, }
Declare a typed function
+
function add(a: number, b: number): number {, return a + b;, }
Declare an arrow function in TypeScript?
+
Arrow functions use the => syntax. Example:, const add = (a:
number, b: number): number => a + b;, They maintain lexical this binding and provide
a concise function expression style.
Decorators in TypeScript?
+
Decorators are annotations for classes, methods, or properties
providing metadata or modifying behavior.
Decorators?
+
Decorators are metadata annotations applied to classes,
methods, parameters, or properties. They enable features like dependency injection
and runtime behavior modification. Common in Angular.
Define a function with optional parameters?
+
Use ? after the parameter name. Example:, function greet(name:
string, age?: number) {}, Optional parameters must appear after required ones.
Abstract class and concrete class?
+
Abstract class cannot be instantiated and can have abstract
methods; concrete class can be instantiated.
Abstract class and interface?
+
Abstract class can have implementation; interface cannot.
Classes can implement multiple interfaces but extend only one abstract class.
Any and unknown?
+
any disables type checking; unknown requires type check before
usage.
Const and readonly in TypeScript?
+
const prevents reassignment; readonly prevents property
modification after initialization.
Const enum and enum?
+
const enum is inlined at compile-time, reducing generated JS;
enum generates an object at runtime.
Export = and export default?
+
export = is compatible with CommonJS; export default is ES6
module default export.
Export and export default?
+
export allows multiple named exports; export default allows one
default export per file.
Function overloading in TypeScript and JavaScript?
+
TypeScript allows multiple function signatures; JavaScript does
not support overloading natively.
Generic constraints and type parameters?
+
Constraints limit types that can be used; type parameters are
placeholders for types.
Import * as and import {}?
+
import * as imports the entire module as an object; import {}
imports specific named exports.
Interface and abstract class?
+
Interface only defines structure; abstract class can provide
implementation.
Interface and class in TypeScript?
+
Interface defines shape; class defines structure and
implementation.
Interface and type alias for object shapes?
+
interface can be extended or merged; type alias cannot be
merged but can define unions or tuples.
Interface extending class and class implementing interface?
+
Interface can extend class to inherit public members; class
implements interface to enforce structure.
Interface extending interface and class implementing
interface?
+
Interface extends interface to inherit shape; class implements
interface to enforce implementation.
Interface merging and type alias merging?
+
Interfaces can be merged; type aliases cannot.
Interface with index signature and Record type?
+
Index signature allows flexible keys; Record enforces key-value
mapping.
Keyof operator and typeof operator?
+
keyof returns union of keys; typeof returns type of a variable
or property.
Literal type and enum?
+
Literal type restricts value to specific literals; enum creates
named constants.
Mapped types and conditional types?
+
Mapped types transform existing types; conditional types select
types based on conditions.
Namespaces and modules?
+
Namespaces are internal modules; modules are external and use
import/export.
Never and void?
+
void represents no return value; never represents no possible
value (e.g., function throws).
Null and undefined in TypeScript?
+
undefined is default uninitialized value; null is explicitly
assigned empty value.
Optional chaining and non-null assertion?
+
Optional chaining (?.) safely accesses properties; non-null
assertion (!) tells compiler value is not null/undefined.
Optional parameters and default parameters?
+
Optional parameters may be undefined; default parameters have
default values if not provided.
Partial and Required?
+
Partial makes all properties optional; Required makes all
properties required.
Private and protected members in class?
+
private accessible only in class; protected accessible in class
and subclasses.
Public, private, and protected in TypeScript?
+
public: accessible anywhere; private: accessible within class;
protected: accessible in class and subclasses.
Public, private, protected shorthand in constructor?
+
Parameters with access modifiers automatically create
properties with visibility.
Readonly and const?
+
const is for variables; readonly is for object properties.
Readonly and mutable type?
+
Readonly prevents reassignment of properties; mutable allows
changes.
TypeScript uses structural typing (types compatible if shapes
match) instead of nominal typing (based on names).
Tuple and array in TypeScript?
+
Tuple has fixed length and types; array can have variable
length and same type elements.
Tuple with rest elements and regular tuple?
+
Tuple with rest elements allows variable-length elements of
specific type at the end.
Type alias and interface for functions?
+
Both can define function types; interface can be merged, type
cannot.
Type and interface in TypeScript?
+
type can define unions, intersections, and primitives;
interface is mainly for object shapes and can be extended.
Type assertion and type casting in JSX/TSX?
+
Use 'as' syntax for type assertion in TSX instead of angle
brackets.
Type assertion and type casting?
+
Type assertion tells compiler to treat value as type; type
casting may also convert runtime value (in other languages).
Type assertion and type predicate?
+
Type assertion tells compiler type; type predicate defines a
function to narrow type (param is Type).
TypeScript and JavaScript?
+
TypeScript adds static typing, interfaces, enums, and advanced
features; JavaScript is dynamically typed.
Unknown[], any[], and Array?
+
unknown[] enforces type check before usage; any[] disables
checks; Array is generic array type.
Void and undefined?
+
void indicates no return value; undefined is a type
representing uninitialized variable.
Differences between classes and interfaces.
+
Classes contain implementation, constructors, and runtime
behavior. Interfaces define structure only and exist only at compile time.
Disadvantages
+
Compilation required, complexity increases, and sometimes
over-strict typing.
Enum in TypeScript?
+
Enum allows defining a set of named constants.
Enums in TypeScript.
+
Enums are used to define named constants in numeric or string
form. Example:, enum Role { Admin, User }, They provide readability and
maintainability for fixed constant sets.
Exclude
+
utility type?
Explicit variable declaration
+
Explicit typing is done like:, let age: number = 25;
Extract
+
utility type?
Generics in TypeScript?
+
Generics allow creating reusable components that work with
multiple types.
Immutable object properties.
+
Yes, using readonly keyword. Example:, readonly id: number;
In operator?
+
Used to check if a property exists in an object:, "age" in
user;
Inheritance in TypeScript.
+
Use extends keyword to derive one class from another. It
supports method overriding and multiple interfaces.
Inheritance in TypeScript?
+
Classes can extend other classes, inheriting their properties
and methods using extends.
InstanceType utility type?
+
Infers instance type of class constructor T.
Interfaces in TypeScript?
+
Interfaces define the structure of an object, describing
properties and method signatures. They support extension, optional properties, and
readonly fields. They enforce shape-based type checking.
Intersection type in TypeScript?
+
Intersection type combines multiple types into one: type A = B
& C.
Is template literal supported in TypeScript?
+
Yes, TypeScript supports template literals similar to
JavaScript. They allow embedding expressions and multi-line strings using backticks
(`). They are useful for creating dynamic strings and advanced types like template
literal types introduced in TS 4.1.
Is TypeScript strictly statically typed language?
+
TypeScript is gradually typed, not strictly typed. You can
enable strict typing mode using compiler options like strict or noImplicitAny. By
default, it allows dynamic typing when types are not specified.
Mapped types in TypeScript?
+
Mapped types create new types by transforming properties of
existing types.
Mixins.
+
Mixins allow combining behaviors from multiple classes without
classical inheritance. They enable reusable functionality sharing.
Modules in TypeScript?
+
Modules help divide code into reusable components using import
and export. Each file with an export becomes a module. They improve maintainability
and organization.
Namespaces in TypeScript?
+
Namespaces organize code internally, providing scope and
preventing global pollution.
Never type in TypeScript?
+
represents values that never occur, e.g., a function that
always throws or never returns.
Never type?
+
never represents values that never occur, such as functions
that throw errors or never return. Example: function error(message): never { throw
new Error(message); }. It ensures unreachable code is type validated.
NoImplicitAny in TypeScript.
+
noImplicitAny is a compiler setting in tsconfig.json. When
enabled, it prevents TypeScript from assigning the type any implicitly. It forces
developers to specify explicit types, improving type safety.
NonNullable utility type?
+
Removes null and undefined from type T.
Omit
+
utility type?
OOP principles supported by TypeScript.
+
TypeScript supports Encapsulation, Inheritance, Abstraction,
and Polymorphism through classes, interfaces, and visibility modifiers.
Optional properties
+
Use ? in object type definition:, {name?: string}
Parameter destructuring in TypeScript.
+
Parameter destructuring extracts object or array values inside
function parameters. Example:, function print({name, age}: {name: string, age:
number}) {}, It simplifies parameter access and improves readability.
Parameters utility type?
+
Infers parameters type of function T as a tuple.
Pick
+
utility type?
Record
+
utility type?
ReturnType utility type?
+
Infers return type of function T.
Static typing?
+
Type checking done at compile-time rather than runtime.
Tuple is an array with fixed number of elements and specific
types for each element.
Type alias in TypeScript.
+
Type alias assigns a custom name to a type using the type
keyword. It can represent primitive, union, object, or function types. Example: type
ID = string | number;. It improves readability and reusability in complex type
definitions.
Type alias in TypeScript?
+
Type alias gives a name to a type using type keyword.
Type assertion in TypeScript?
+
Type assertion tells the compiler to treat a value as a
specific type using or as syntax.
Type guards in TypeScript?
+
Type guards narrow types using runtime checks like typeof or
instanceof.
Type inference in TypeScript?
+
Compiler automatically infers variable types when explicit type
is not provided.
Type inference.
+
TypeScript automatically infers types when variables are
assigned. Example: let x = 10; infers type number. It reduces required annotations
while keeping type safety.
Type null
+
Represents the absence of value. It can be assigned when strict
null checks are disabled.
Typeof operator.
+
typeof retrieves the runtime type of a variable. Example:
typeof 10 // 'number'. Useful in type narrowing with conditional types.
Types of decorators in TypeScript?
+
Class, property, method, accessor, and parameter decorators.
TypeScript create static classes?
+
TypeScript doesn’t support true static classes, but a class
with all static members behaves similarly.
TypeScript?
+
TypeScript is a strongly typed superset of JavaScript that
compiles to plain JavaScript.
Undefined type
+
Indicates a variable declared but not assigned a value.
Union type in TypeScript?
+
Union type allows a variable to hold one of several types: type
A = string | number.
Union types in TypeScript.
+
Union types allow a variable to store more than one data type.
They are declared using the | symbol. Example: let value: string | number;. They
help create flexible and type-safe code. Union types avoid unnecessary overuse of
any.
Unknown type in TypeScript?
+
unknown is safer than any; you must check type before
performing operations.
Use class vs interface?
+
Use interfaces for structure definition and type checking. Use
classes to create objects with state, methods, and behavior.
Use of tsconfig.json.
+
It configures TypeScript compilation settings such as module
system, target JS version, strict rules, include/exclude paths. It controls
project-wide compilation behavior.
Use the for loop in TypeScript?
+
You can use for, for...of, for...in, and forEach() loops.
for...of iterates values, for...in iterates keys, and forEach() is used for arrays.
All work similarly to JavaScript with type safety.
Used when a function returns nothing:, function log(): void {}
Ways to classify modules.
+
Modules are classified into internal (namespace) and external
(ES modules). Internal modules use namespace, external modules use import/export.
Ways to control member visibility.
+
Use access modifiers: public, private, protected, and readonly.
Ways to declare variables
+
Variables can be declared using var, let, and const, depending
on scope and mutability requirements.
Umbraco CMS
+
Content node in umbraco?
+
A content node represents a page or item in the content tree.
It is the main unit of content managed in Umbraco.
Diffbet content and media in umbraco?
+
Content is structured pages; media is files like images,
videos, or documents uploaded to the media library.
Diffbet umbraco cloud and on-premise?
+
Cloud is hosted with automated updates, scaling, and deployment
pipelines. On-premise is self-hosted, requiring manual maintenance.
Does umbraco mvc work?
+
Umbraco uses MVC; controllers manage logic, views render
templates, and models define content. Razor syntax integrates CMS content with
views.
Is caching handled in umbraco?
+
Umbraco supports output caching, partial caching, and
distributed caching to improve performance
Macro in umbraco?
+
Macros are reusable components that render dynamic content or
perform custom logic inside templates.
Property editor in umbraco?
+
Property editors define the type of content (e.g., text, rich
text, media picker) stored in a content node field.
To create a document type in umbraco?
+
Document types define content structure; create via the
back-office by adding fields and templates to manage content.
To implement authentication in umbraco?
+
Use built-in membership providers or integrate with external
OAuth/SSO providers for user authentication.
Umbraco?
+
Umbraco is an open-source .NET CMS for building websites and
web applications. It is flexible, scalable, and supports MVC architecture.
Visio QA
+
Can visio export diagrams to pdf or image?
+
Yes, Visio supports export to PDF, PNG, JPG, SVG, or VSDX
formats for sharing.
Diffbet flowchart and process diagram in visio?
+
Flowchart emphasizes decision points and steps, process diagram
focuses on activities and interactions in workflows.
Diffbet visio standard and professional?
+
Professional supports advanced diagrams, data linking, and
collaboration features. Standard is for basic diagramming.
Layering in visio?
+
Layering allows grouping shapes for visibility, printing, or
editing control. Helps manage complex diagrams.
Microsoft visio?
+
Visio is a diagramming tool to create flowcharts, org charts,
network diagrams, and architecture diagrams. Supports professional templates.
Stencil in visio?
+
A collection of shapes and symbols used for a particular type
of diagram. Stencils can be customized or imported.
To create a network diagram in visio?
+
Use network templates, drag network shapes, connect devices,
and annotate with IP or roles.
To link data to visio diagrams?
+
Use the Data tab → Link Data to Shapes to connect Excel or SQL
data for live updates in diagrams.
To maintain diagram consistency in visio?
+
Use templates, themes, standard stencils, and auto-alignment
features for consistent appearance.
You collaborate on visio diagrams?
+
Visio Online allows multiple users to view and edit diagrams in
real-time. Also integrates with OneDrive or SharePoint.
WCF
+
Ault in wcf?
+
A fault is an error returned to a client using FaultException
instead of a regular exception.
Basichttpbinding used for?
+
BasicHttpBinding is used for interoperability with legacy SOAP
services over HTTP.
Basichttpbinding?
+
BasicHttpBinding uses HTTP and is interoperable with legacy
ASMX web services.
Behaviors in wcf?
+
Behaviors modify runtime service features like metadata
exposure, throttling, security, and instance management. Examples: ServiceBehavior,
EndpointBehavior.
Binding configuration file?
+
Defines service behaviors, endpoints, security, and bindings in
web.config or app.config. Allows flexible changes without recompiling code.
Binding in wcf?
+
A binding defines how a service communicates including protocol
encoding and security settings.
Bindings in wcf?
+
Bindings define how a WCF service communicates with clients.
Examples: BasicHttpBinding, WSHttpBinding, NetTcpBinding. They include transport,
encoding, and protocol details.
Callback contract?
+
A callback contract defines methods on the client that the
service can call in a duplex service.
Channelfactory?
+
ChannelFactory is used to create a WCF client dynamically
without generating a proxy.
Components of an endpoint?
+
Components include Address Binding and Contract (ABC model).
Concurrencymode in wcf?
+
Specifies threading model for service instances: Single,
Multiple, Reentrant. Ensures thread-safe access to service data.
Concurrencymode?
+
ConcurrencyMode controls how multiple threads access a service
instance: Single Multiple or Reentrant.
Data contracts in wcf?
+
Data contracts define how data types are
serialized/deserialized. [DataContract] and [DataMember] attributes specify
structure and fields for communication.
Datacontract?
+
A DataContract defines the data structure that a WCF service
can serialize and send to clients.
Datamember?
+
A DataMember marks a property or field of a DataContract that
will be serialized and transmitted.
Diffbet buffered and streamed transfer modes?
+
Buffered loads entire message into memory; Streamed transfers
data as a stream for efficiency.
Diffbet datacontract and serializable?
+
DataContract is WCF-specific and version-tolerant; Serializable
is .NET-specific and less flexible.
Diffbet faultexception and exception?
+
Exception is server-side; FaultException is serialized and sent
to the client in SOAP.
Diffbet iis and was?
+
IIS is for HTTP-based hosting; WAS supports HTTP TCP and named
pipes hosting.
Diffbet messagecontract and datacontract?
+
DataContract defines data; MessageContract defines the SOAP
message structure including headers.
Diffbet mex and wsdl?
+
WSDL defines service description; MEX is a WCF endpoint that
provides WSDL to clients.
Diffbet operationcontext and instancecontext?
+
OperationContext provides context for a single call;
InstanceContext represents the service instance.
Diffbet percall and persession?
+
PerCall creates a new instance per request; PerSession
maintains a service instance per client session.
Diffbet request-reply and one-way operations?
+
Request-Reply returns a response to the client; One-Way does
not return a response.
Diffbet servicecontract and operationcontract?
+
ServiceContract defines the service interface;
OperationContract defines methods in the interface.
Diffbet servicehost and webservicehost?
+
ServiceHost hosts WCF services; WebServiceHost is specifically
for RESTful WCF services.
Diffbet soap 1.1 and soap 1.2?
+
SOAP 1.2 is an updated version with better error handling and
stricter compliance; 1.1 is older and widely supported.
Diffbet soap and rest endpoints?
+
SOAP endpoints use SOAP messages; REST endpoints use HTTP verbs
with JSON or XML payloads.
Diffbet soap and rest in wcf?
+
SOAP uses XML-based messaging with strict contracts; REST uses
lightweight HTTP/JSON, supports CRUD operations. REST is easier for web clients,
SOAP for enterprise interoperability.
Diffbet soap and rest messages?
+
SOAP messages are XML-based and verbose; REST messages are
lightweight and can use JSON or XML.
Diffbet soap faults and exceptions?
+
SOAP faults are serialized and sent to clients; exceptions are
server-side only.
Diffbet synchronous and asynchronous proxy methods?
+
Synchronous proxy blocks; asynchronous proxy returns
immediately and uses callbacks or tasks.
Diffbet synchronous and asynchronous service calls?
+
Synchronous calls block until response; asynchronous calls
return immediately and process response later.
Diffbet synchronous and asynchronous wcf calls?
+
Synchronous calls block until a response is received;
asynchronous calls return immediately and use callbacks or tasks.
Diffbet synchronous and asynchronous wcf proxy?
+
Synchronous proxy waits for response; asynchronous proxy uses
callbacks or tasks for non-blocking calls.
Diffbet tcp and http bindings?
+
TCP bindings are faster and for intranet; HTTP bindings are
interoperable and can traverse firewalls.
Diffbet wcf and asmx?
+
WCF is more flexible supports multiple protocols security and
transactions; ASMX supports only HTTP/SOAP.
Diffbet wcf and web api?
+
WCF supports multiple protocols and is suitable for SOAP and
enterprise services; Web API is REST-based HTTP-only.
Diffbet webget and webinvoke?
+
WebGet is for read-only operations (GET); WebInvoke is for
write or update operations (POST/PUT/DELETE).
Diffbet ws-security and transport security?
+
WS-Security secures messages at the SOAP level; Transport
Security secures the communication channel like HTTPS.
Duplex channel in wcf?
+
A duplex channel enables two-way communication where the client
can receive callbacks from the service.
Duplex service?
+
A duplex service allows two-way communication where the service
can also send messages to the client.
Endpointbehavior?
+
EndpointBehavior modifies endpoint behavior such as parameter
inspectors or message inspectors.
Faultcontract?
+
FaultContract defines custom errors a WCF service can return to
clients in a controlled manner.
Faultexception?
+
FaultException represents a SOAP fault message that can be sent
to clients with structured error info.
Includeexceptiondetailinfaults used for?
+
It allows sending server exception details to client for
debugging purposes.
Includeexceptiondetailinfaults?
+
IncludeExceptionDetailInFaults exposes server-side exception
details to clients for debugging.
Instancecontextmode?
+
Controls service object creation: PerCall (new per request),
PerSession (per client session), Single (singleton). Determines service scalability
and state management.
Json serialization in wcf?
+
JSON serialization converts .NET objects to JSON format for
transmission over RESTful WCF services.
Main bindings in wcf?
+
Common bindings include BasicHttpBinding WSHttpBinding
NetTcpBinding NetNamedPipeBinding and NetMsmqBinding.
Main features of wcf?
+
WCF supports service orientation multiple protocols
interoperability security transactions and reliable messaging.
Message contract in wcf?
+
Message contract gives full control over SOAP message structure
including headers and body.
Message contract?
+
MessageContract allows full control over SOAP messages
including headers and body.
Message inspectors?
+
Message Inspectors allow inspecting or modifying messages at
runtime in WCF services.
Message security?
+
Message security secures SOAP messages independently of the
transport layer.
Mex endpoint?
+
MEX (Metadata Exchange) endpoint exposes service metadata for
client proxy generation.
Netmsmqbinding used for?
+
NetMsmqBinding is used for queued messaging with MSMQ in
disconnected or reliable scenarios.
Netmsmqbinding?
+
NetMsmqBinding enables queued communication using MSMQ for
disconnected or reliable scenarios.
Netnamedpipebinding used for?
+
NetNamedPipeBinding is used for communication between processes
on the same machine.
Netnamedpipebinding?
+
NetNamedPipeBinding enables communication between processes on
the same machine.
Nettcpbinding used for?
+
NetTcpBinding is used for high-performance communication within
intranet using TCP protocol.
Nettcpbinding?
+
NetTcpBinding uses TCP protocol for high-performance
communication in intranet environments.
Operation contract?
+
An operation contract defines a method in a service contract
that can be called by clients using the [OperationContract] attribute.
Operationbehavior?
+
OperationBehavior controls per-method behavior like transaction
scope or concurrency.
Parameter inspectors?
+
Parameter Inspectors allow inspecting or modifying method
parameters before and after operation execution.
Percall?
+
PerCall creates a new service instance for every client
request.
Persession?
+
PerSession maintains a service instance for a client session
until it closes.
Reliablemessaging in wcf?
+
ReliableMessaging ensures messages are delivered reliably even
in case of network failures.
Reliablesession in wcf?
+
ReliableSession ensures messages are delivered reliably and in
order.
Role of servicecontract in wcf?
+
ServiceContract defines the interface for operations exposed by
the WCF service.
Security modes in wcf?
+
Security modes include None Transport Message and
TransportWithMessageCredential.
Service contract in wcf?
+
A service contract defines the operations a WCF service exposes
to clients using the [ServiceContract] attribute.
Service contract?
+
A service contract is an interface decorated with
[ServiceContract]. It defines operations exposed to clients via [OperationContract]
attributes.
Servicebehavior?
+
ServiceBehavior controls service-level settings like instance
mode concurrency and throttling.
Servicehost?
+
ServiceHost hosts a WCF service and manages its lifetime and
endpoints.
Servicemetadatabehavior?
+
ServiceMetadataBehavior exposes metadata (WSDL) to clients for
proxy generation.
Single?
+
Single uses one service instance to handle all client requests.
Streaming modes in wcf?
+
Streaming modes include Buffered Streamed StreamedRequest and
StreamedResponse.
Svcutil?
+
Svcutil is a tool to generate WCF client proxies and metadata
from service endpoints.
Throttling settings in wcf?
+
Settings include maxConcurrentCalls maxConcurrentSessions and
maxConcurrentInstances.
To handle exceptions in wcf?
+
Use FaultContract to send typed faults to clients. Avoid
throwing raw exceptions, as they may leak internal details.
Transactionscope in wcf?
+
TransactionScope defines the boundaries of a transaction for
operations in a WCF service.
Transport security?
+
Transport security secures data at the transport level e.g.
HTTPS.
Types of behaviors?
+
ServiceBehavior EndpointBehavior and OperationBehavior.
Wcf behavior?
+
Behaviors modify service or endpoint runtime behavior e.g.
adding logging validation or error handling.
Wcf client?
+
A WCF client consumes services exposed by a WCF service.
Wcf duplex communication?
+
Duplex communication allows two-way communication where the
server can send messages to the client.
Wcf endpoint?
+
A WCF endpoint defines the address binding and contract for
client-service communication.
Wcf hosting options?
+
Hosting options include IIS WAS Self-hosting in Console or
Windows Service and Windows Activation Service.
Wcf hosting?
+
Hosting is the process of running a WCF service in an
environment like IIS Windows Service or Console App.
Wcf metadata?
+
Metadata describes the service contract and data structures
enabling clients to generate proxies.
Wcf proxy?
+
A proxy is a client-side object generated from metadata to call
WCF service methods.
Wcf rest?
+
WCF REST allows creating RESTful services using WebHttpBinding
and attributes like WebGet/WebInvoke.
Wcf routing service?
+
WCF routing service routes messages to multiple endpoints based
on filters or rules.
Wcf session?
+
A WCF session maintains stateful communication between client
and service over multiple calls.
Wcf streaming?
+
Streaming allows transferring large data efficiently without
loading the entire content into memory.
Wcf throttling behavior?
+
Throttling behavior limits concurrent calls instances or
sessions to manage performance.
Wcf throttling configuration?
+
Throttling configuration sets maxConcurrentCalls
maxConcurrentSessions and maxConcurrentInstances in service behavior.
Wcf throttling?
+
Throttling limits the number of concurrent sessions calls or
instances to optimize performance.
Wcf transaction?
+
WCF Transaction allows multiple operations to execute as a
single unit of work with commit or rollback.
Wcf?
+
WCF is a framework for building service-oriented applications.
It enables communication between applications over protocols like HTTP, TCP, and
MSMQ. Supports multiple messaging patterns like request-reply, one-way, and duplex.
Webget and webinvoke?
+
WebGet maps GET requests; WebInvoke maps POST PUT DELETE or
custom HTTP methods in REST services.
Webhttpbehavior?
+
WebHttpBehavior enables RESTful behavior for WCF endpoints
using WebHttpBinding.
Webhttpbinding?
+
WebHttpBinding supports RESTful services over HTTP with JSON or
XML formats.
Wshttpbinding used for?
+
WSHttpBinding is used for SOAP-based services with security
reliable messaging and transactions.
Wshttpbinding?
+
WSHttpBinding supports SOAP WS-Security reliable messaging and
transactions over HTTP.
Web API
+
.net framework supports asp.net web api
+
Web API is supported in .NET Framework 4.0 and above., Also
supported in .NET Core / .NET 5+ with ASP.NET Core Web API.
.net framework supports web api?
+
Web API is supported in .NET Framework 4.0+, .NET Core, and
ASP.NET MVC., It is also part of ASP.NET Core as minimal APIs., It is widely used
for building RESTful applications.
“api/” segment used in web api routing
+
It distinguishes Web API routes from MVC routes., Helps routing
engine send requests to ApiController instead of MVC controller.
Advantages of using asp.net web api
+
Web API allows building RESTful services accessible via HTTP.,
Supports multiple formats like JSON and XML., Lightweight, easy to consume, and
platform-independent., Integrates easily with clients like browsers, mobile apps,
and IoT devices.
Advantages of using rest in web api
+
Stateless and lightweight, Uses standard HTTP methods, Easy to
consume by multiple clients, Scalable and platform-independent
Advantages of web api:
+
Supports REST and standard HTTP verbs (GET, POST, PUT,
DELETE)., Lightweight compared to WCF., Supports JSON/XML formatting automatically.,
Works easily with multiple platforms and devices.
Api filters?
+
Filters are attributes that allow you to run code before or
after an action., Types: Authorization filters, Action filters, Exception filters,
Result filters., Used for logging, caching, authentication, and error handling.
Asp.net web api routing
+
Routing maps URLs to controller actions., Supports
convention-based (default) and attribute-based routing., Helps Web API respond
correctly to HTTP requests.
Asp.net web api?
+
ASP.NET Web API is a framework to build HTTP services., It
allows clients to communicate via HTTP using RESTful principles., Supports JSON,
XML, and multiple platforms.
Benefit of using rest in web api?
+
REST is lightweight, fast, and easy to implement., It supports
multiple data formats like JSON and XML., It is scalable and suited for distributed
systems.
Benefit of web api over wcf?
+
Web API is lightweight, REST-based, and easy to use with HTTP.,
It supports browsers, mobile apps, and IoT more naturally., WCF is more complex and
suited for SOAP-based enterprise systems., Web API is easier to extend and supports
modern architectures.
Biggest disadvantage of “other return types” in web api?
+
They don’t give full control over the response format.,
Developers cannot easily set status codes, headers, or content negotiation., This
limits flexibility in REST design.
Caching and its types
+
Caching stores frequently accessed data to improve
performance., Types:, Output Caching: Stores generated responses., Data Caching:
Stores data objects in memory., Distributed Caching: Shared across servers.
Can a web api return an html view?
+
By default, Web API returns data, not HTML views., Returning
HTML is possible, but not recommended., It is designed for RESTful services to serve
JSON/XML.
Can we register an exception filter from the action?
+
You can register an exception filter by using the
[OverrideExceptionFilters] or custom attribute on an action., Apply it directly
above the action method., Example: [CustomExceptionFilter] before the action., This
applies filtering only to that specific method.
Can we return view from asp.net web api method?
+
No, Web API is meant for data responses, not views.,
Controllers return JSON, XML, or HTTP status codes., For views, use MVC controllers
instead.
Can we use web api 2 in a console app?
+
Yes, Web API 2 can be self-hosted in a console application., It
uses OWIN or SelfHost packages., It allows API hosting without IIS., Useful for
microservices, embedded services, and background apps.
Can we use web api with asp.net web form?
+
You can host Web API in the same project., Configure routing in
Global.asax., Web Forms can call API endpoints using AJAX or HTTP clients.
Can you use web api with asp.net web form?
+
Yes, Web API can coexist with Web Forms., Routing must be
configured to avoid conflicts., Useful for gradual migration.
Choose web api over wcf
+
Simpler to develop RESTful services., Supports multiple clients
natively., Lightweight and easier to maintain than WCF.
Code for passing arraylist in web api:
+
public HttpResponseMessage Post([FromBody] List data), {,
return Request.CreateResponse(HttpStatusCode.OK, data);, }
Code snippet to register exception filters in a controller:
+
[CustomExceptionFilter], public class HomeController :
ApiController, {, }, This applies the exception filter across all actions within
that controller., Useful for consistent error handling.
Code snippet to return 404 using httperror:
+
return Request.CreateErrorResponse(HttpStatusCode.NotFound,
"Resource not found");, This creates an HttpError message with a 404 status and
sends it back to the client., It is useful when the requested resource does not
exist.
Consume web api?
+
Any client that can make HTTP requests., Examples: Browsers,
mobile apps, desktop apps, other servers., No dependency on .NET; supports
cross-platform access.
Content negotiation in asp.net web api
+
It selects the best response format based on client request.,
Supports JSON, XML, or custom media types., Determined via HTTP Accept header.,
Helps APIs serve multiple clients seamlessly.
Cors in web api?
+
CORS (Cross-Origin Resource Sharing) allows Web APIs to be
accessed from different domains., It prevents security errors when browsers request
resources from another domain., Configured via headers or EnableCors attribute in
Web API., Helps in building APIs for web and mobile clients.
Default http response for uncaught exceptions?
+
Web API returns 500 Internal Server Error for unhandled
exceptions., This indicates a server-side failure., It is recommended to use
Exception Filters for custom handling.
Default status code for uncaught exceptions in web api?
+
By default, Web API sends 500 Internal Server Error for
unhandled exceptions., This indicates a server-side processing failure., Exception
filters can customize error output., It ensures standard error reporting.
Diffbet apicontroller and controller
+
ApiController is for Web APIs, returning data (JSON/XML).,
Controller is for MVC, returning views (HTML)., ApiController doesn’t support View
rendering or session state by default., Action methods in ApiController respond to
HTTP verbs automatically.
Diffbet http get vs http post
+
GET: Retrieves data, idempotent, parameters in URL, limited
size., POST: Sends data, not idempotent, parameters in body, supports large
payloads., GET can be cached; POST is usually not cached.
Diffbet mvc and web api:
+
MVC is used for building server-side rendered web
applications., Web API is used for building HTTP-based services returning JSON/XML.,
MVC returns Views, while Web API returns data., Web API is optimized for REST
communication.
Diffbet rest api and restful api
+
REST API: Any API following REST principles., RESTful API:
Strictly adheres to REST constraints (stateless, resource-based, uses HTTP verbs).
Diffbet web api and wcf
+
Web API: Lightweight, HTTP/REST, JSON/XML, stateless., WCF:
SOAP-based, supports multiple protocols, heavier., Web API is simpler for web/mobile
services.
Diffbet xml and json
+
XML: Verbose, supports attributes and complex schemas., JSON:
Lightweight, easier to parse, widely used in REST APIs., JSON is preferred in modern
web applications for speed and simplicity.
Exception filters in asp.net web api
+
Filters handle unhandled exceptions globally or
per-controller., They help in logging errors and returning meaningful responses.,
Implemented via IExceptionFilter or [ExceptionFilter] attributes., Ensures
consistent error handling across the API.
Explain different http methods:
+
GET: Fetches data from the server., POST: Creates a new
resource., PUT: Updates an existing resource fully., DELETE: Removes a resource.,
Other methods include PATCH (partial update), HEAD (headers only), and OPTIONS
(capabilities query).
Explain error handling in web api.
+
Handled using Exception Filters, Try-Catch blocks, and custom
middleware., Can log errors and send meaningful HTTP responses., Ensures better
debugging and user experience.
Explain exception filters.
+
Exception filters handle unhandled errors centrally., They
allow logging and returning custom error responses., Applied globally or per
controller.
Explain media type formatters
+
Media type formatters serialize and deserialize data in Web
API., Examples: JsonMediaTypeFormatter, XmlMediaTypeFormatter., They convert objects
to JSON/XML or vice versa depending on request headers.
Explain rest and restful.
+
REST is an architectural style using HTTP principles., RESTful
services implement REST rules like statelessness and resource-based URIs., They use
standard HTTP verbs.
Explain web api routing.
+
Routing maps URL patterns to controller actions., Supports two
types: convention-based and attribute routing., Attribute routing gives more
flexibility.
Frameworks are compatible for building web api services?
+
Web API can be built using ASP.NET Framework, .NET Core, and
.NET 5/6+., It works with MVC, Entity Framework, and OWIN., It can also integrate
with cross-platform frameworks., Supports deployment in cloud, containers, and IIS
environments.
Has web api replaced wcf?
+
Yes, for REST services, Web API is preferred., WCF is still
used for SOAP, duplex, and enterprise applications., Web API is simpler and aligned
with web standards., Both may still coexist depending on use case.
HttpConfiguration defines routing, formatters, message
handlers, and filters., It is used to configure the Web API pipeline at startup.,
Example: GlobalConfiguration.Configure(WebApiConfig.Register);
Internet media types?
+
Also called MIME types, they specify the format of data sent
over HTTP., Examples: application/json, text/html, image/png., Helps client and
server understand how to process data.
Main return types in web api
+
IHttpActionResult (Web API 2), HttpResponseMessage, POCO
objects (automatically serialized to JSON/XML)
Main return types supported in asp.net web api
+
IHttpActionResult, HttpResponseMessage, Strongly-typed objects
(serialized automatically), string or primitive types, These are converted to proper
HTTP responses.
Main return types supported in web api?
+
Web API supports return types like HttpResponseMessage,
IHttpActionResult, and simple CLR objects., It can also return void or custom
models., The response is automatically serialized based on content negotiation.,
These return types provide flexibility in handling API responses.
Meaning of testapi?
+
TestApi is used to test Web API endpoints., Tools like Postman
or Swagger enable testing., It validates functionality, performance, and security.
Method that validates all controls on a page
+
Page.Validate() validates all server controls on the page.,
After that, Page.IsValid checks whether validation passed.
Method to handle error using httperror in web api
+
HttpError is used with HttpResponseException or
Request.CreateErrorResponse()., Example: return
Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Invalid input");, It sends
structured error details to the client.
Mvc? diffbet mvc and web api
+
MVC: Builds web apps with Views (HTML), Controller, Model., Web
API: Builds services to expose data via HTTP., MVC returns Views, Web API returns
data., MVC supports full-page rendering; Web API supports client-server
communication.
Name method that validates all controls on a page
+
Page.Validate() validates all validation controls on a page.,
Page.IsValid property checks if all validations succeeded., Commonly used in ASP.NET
Web Forms before saving data.
New features in asp.net web api 2.0
+
Attribute routing for better URL control., Support for OData
queries and CORS., Exception filters and IHttpActionResult for flexible responses.,
Improved tracing, message handlers, and content negotiation.
New features in web api 2.0?
+
Includes Attribute Routing, OData support, CORS support, and
IHttpActionResult return type., It improves flexibility and testability.
Open-source library used by web api for json serialization
+
Newtonsoft.Json (Json.NET) is the commonly used library for
JSON.
Parameters can be passed in the url of api
+
Query parameters: ?id=1&name=John, Route parameters:
/api/users/1, Optional parameters: Defined in routing templates., Parameters help
filter, sort, or fetch specific data.
Parameters get value in web api
+
From URL path: via route parameters., From query string: ?id=1,
From body: in POST/PUT requests., Model binding automatically maps values.
Pass multiple complex types in web api?
+
Use FromBody with a wrapper model or JSON object., Web API
binds data to model automatically.
Register exception filter from action?
+
Use attribute [HandleError] or custom filter., Apply directly
to action method., Provides localized exception handling.
REST is an architectural style using HTTP for communication.,
It uses stateless requests and resource-based URIs., Supports CRUD operations.
Restrict access to specific http verbs?
+
Use attributes like [HttpGet], [HttpDelete]., These enforce
HTTP method rules on actions.
Skills required for asp.net developer
+
Strong knowledge of C#, .NET, MVC, Web API., Database skills
(SQL Server, Entity Framework)., Frontend skills: HTML, CSS, JavaScript, jQuery.,
Understanding RESTful services, AJAX, authentication, and debugging.
Soap?
+
SOAP stands for Simple Object Access Protocol., It is XML-based
and used for secure message exchange., SOAP supports strict rules, contracts, and
WS-Security.
Status code for “empty return type” in web api
+
If a Web API method returns nothing, the default status code is
204 No Content., It indicates the request succeeded but no data is returned.
To assign alias name for web api action?
+
Use [ActionName("aliasName")] attribute., Requests can use the
alias instead of method name., Improves readability.
To handle errors in web api
+
Use Exception Filters, try-catch blocks, or
HttpResponseException., You can return proper HTTP status codes with error
messages., Helps clients handle errors gracefully.
To handle errors in web api?
+
Errors can be handled using try-catch blocks, Exception
Filters, or Global Exception Handling., Another approach is custom
HttpResponseMessage or HttpError., Logging and middleware pipelines also help track
issues., This ensures clean error responses to clients.
To handle errors using httperror in web api?
+
Use HttpError with HttpResponseMessage to return structured
error details., It allows adding messages, validation errors, or custom error
objects., Example: Request.CreateErrorResponse(HttpStatusCode.BadRequest, new
HttpError("Invalid data"))., Useful for client-friendly error communication.
To limit access to web api to a specific http verb?
+
Use attributes like [HttpGet], [HttpPost], [HttpPut]., These
restrict methods to the corresponding HTTP request., Ensures proper REST compliance.
To register an exception filter globally
+
In WebApiConfig.cs (or FilterConfig.cs for MVC):,
config.Filters.Add(new MyExceptionFilter());, This applies the filter to all
controllers and actions.
To register exception filter globally?
+
Add filter in WebApiConfig.Register()., Example:
config.Filters.Add(new CustomExceptionFilter());., Makes filter apply to all
controllers.
To restrict access to methods with http verbs?
+
Use declarative attributes like [HttpPost], [HttpGet]., Ensures
only the intended request type triggers the method., Supports correct REST design.
To return view from web api?
+
Web API doesn't directly return a View., Instead, use MVC
Controller or return HTML string., Better separation of concerns is recommended.
To secure asp.net web api
+
Use authentication and authorization (JWT, OAuth, Basic).,
Enable HTTPS to encrypt communication., Validate inputs and use CORS carefully.,
Role-based or policy-based access ensures secure endpoints.
To unit test web api
+
Use mock frameworks (like Moq) to simulate dependencies., Call
controller actions with fake HttpRequestMessage., Check returned HttpResponseMessage
or IHttpActionResult., Helps ensure API logic works independently of the host
environment.
To unit test web api?
+
Use testing frameworks like MSTest, NUnit, or xUnit., Mock
dependencies using Moq., Test methods and responses independently.
Tools for testing web api?
+
Examples: Postman, Swagger, Fiddler, SoapUI, JMeter., They help
simulate HTTP calls and validate API behavior.
Usage of delegatinghandler?
+
DelegatingHandler is used in Web API to create custom message
handlers., It allows interception of HTTP requests and responses before reaching the
controller., Common uses include logging, authentication, encryption, and caching.,
Multiple handlers can be chained for layered processing.
Use of delegatinghandler?
+
DelegatingHandler is used to process HTTP requests/responses.,
Acts as a middleware in the message pipeline., Can implement logging,
authentication, or request modification., Supports chaining multiple handlers.
Use of httpresponsemessage
+
HttpResponseMessage allows sending custom HTTP responses., You
can set status codes, headers, and content explicitly., It gives more control than
returning simple objects., Useful for detailed API responses.
Wcf is replaced by asp.net web api. true/false?
+
False., WCF is still used for SOAP-based services, secure and
transactional services., Web API is preferred for RESTful HTTP services, but WCF is
not fully replaced.
Web api and why we use it?
+
Web API is a framework for building HTTP services., It is used
to expose data (JSON/XML) to clients like browsers, mobile apps, or other services.,
Supports REST architecture for lightweight communication.
Web api is important
+
Allows building RESTful services for multiple clients.,
Lightweight, scalable, and platform-independent., Supports HTTP methods and status
codes for better control.
Web api is required?
+
To expose data and services over HTTP protocols., Supports
multiple clients like mobile, IoT, and web apps., Allows building REST services
easily., Good for loosely-coupled architecture.
Web api routing?
+
Routing maps incoming HTTP requests to controller actions., It
uses patterns defined in WebApiConfig.cs., Supports both conventional and attribute
routing.
Web api supports which protocol
+
HTTP/HTTPS protocol for communication.
Web api supports which protocol?
+
Web API supports HTTP as its primary protocol., It also
supports RESTful communication patterns., Other protocols like HTTPS, WebSockets can
also be integrated., It is mainly designed for web and distributed systems.
Web api uses which library for json serialization?
+
ASP.NET Web API uses Newtonsoft.Json (Json.NET) by default., In
ASP.NET Core, System.Text.Json can also be used., Serializes objects to JSON and
parses JSON to objects.
Web api uses which open-source library for json serialization?
+
Web API originally used Newtonsoft.Json (JSON.NET)., In ASP.NET
Core, it uses System.Text.Json by default., Both libraries convert objects to JSON
and back.
Web api?
+
Web API is lightweight, fast, and easy to use., Supports REST
standards and multiple data formats., Highly scalable and testable., Better suited
for modern distributed applications.
Website owners avoid http status codes
+
They don’t “avoid” them; they handle or redirect errors using
custom error pages., Example: 404.html for Page Not Found, 500.html for server
errors., Status codes still get sent, but users see friendly pages.
Web api 2.0
+
Enhanced version of Web API with features like, Attribute
routing, OWIN hosting, CORS support, and IHttpActionResult.
Xml and json?
+
XML: Extensible markup language, verbose, supports attributes.,
JSON: JavaScript Object Notation, lightweight, easier to parse., Both are used to
exchange data between client and server.
You construct html response message?
+
Use HttpResponseMessage with content type "text/html".,
Example:, return new HttpResponseMessage() { , Content = new StringContent("
Webhook
+
Advantages of using webhooks?
+
Real-time updates, reduced server load, simpler architecture,
and automation of workflows.
Common use case for webhooks?
+
Payment notifications, CI/CD pipelines, chatbots, form
submissions, and third-party integrations.
Webhook and a callback function in programming?
+
Callback functions are used locally within code; webhooks are
HTTP callbacks sent over the internet between applications.
Webhook and a callback URL?
+
A webhook is a type of callback URL used for event
notifications; callback URL can be used in many contexts, not just webhooks.
Webhook and an API?
+
APIs require polling to get updates; webhooks push updates
automatically when events occur.
GET and POST in webhooks?
+
POST sends a payload to the endpoint; GET is rarely used but
can fetch data or confirm delivery.
HMAC and basic token verification in webhooks?
+
HMAC uses a secret and hashing algorithm for payload
verification; token verification checks a static token in the request.
Inbound and outbound webhooks?
+
Inbound webhooks receive data from external sources; outbound
webhooks send data to external endpoints.
JSON and XML webhooks?
+
JSON is lightweight and commonly used; XML is more verbose but
sometimes required by legacy systems.
JSON schema validation and signature verification in webhooks?
+
JSON schema checks payload structure and data types; signature
verification checks authenticity.
One-way and two-way webhooks?
+
One-way webhooks send data from source to target; two-way
webhooks allow target to respond with data or actions.
Polling and webhooks?
+
Polling repeatedly requests updates from the server; webhooks
push updates when events occur, reducing unnecessary requests.
Public and private webhooks?
+
Public webhooks can be accessed by anyone with the URL; private
webhooks are protected by authentication or secret tokens.
Push and pull webhooks?
+
Push webhooks send data automatically; pull webhooks require
the receiver to request data from the source.
REST API and webhook?
+
REST API requires client requests to fetch data; webhooks push
data automatically on event triggers.
Synchronous and asynchronous processing of webhooks?
+
Synchronous processing completes before responding to the
sender; asynchronous processes payload later, often in a queue.
Synchronous and asynchronous webhooks?
+
Synchronous webhooks require immediate processing and response;
asynchronous webhooks queue or retry delivery without blocking the sender.
Webhook and cron job?
+
Webhook triggers on events; cron job triggers on scheduled
time.
Webhook and event-driven architecture?
+
Webhooks are a mechanism in event-driven architecture;
event-driven architecture is the broader design principle.
Webhook and polling?
+
Webhook pushes events automatically; polling repeatedly
requests updates at intervals.
Webhook and server-sent events (SSE)?
+
Webhooks push data from server to server; SSE pushes data from
server to browser over HTTP connection.
Webhook and WebSocket?
+
Webhooks are HTTP callbacks triggered by events; WebSocket
provides persistent, bidirectional connection.
Webhook endpoint and webhook consumer?
+
Endpoint is the URL that receives events; consumer is the
application or code that processes them.
Webhook ping and webhook test?
+
Ping checks endpoint availability; test sends sample payload to
verify processing logic.
Webhook retries and dead-letter queues?
+
Retries attempt to resend failed events; dead-letter queues
store undeliverable events for analysis.
Webhook signing and encryption?
+
Signing verifies authenticity; encryption ensures
confidentiality of the payload.
DiffBet Webhook and API?
+
APIs require clients to poll data on demand. Webhooks push data
automatically when events occur. Webhooks are event-driven, APIs are request-driven.
Disadvantages of webhooks?
+
Security risks if not authenticated, debugging difficulty,
potential for missing events if downtime occurs.
Handle idempotency in Webhooks?
+
Use unique event IDs to avoid processing the same webhook
multiple times, ensuring operations like payment updates are executed once.
HTTP method commonly used in webhooks?
+
POST is the most common HTTP method for sending webhook
payloads.
HTTP methods do Webhooks use?
+
Mostly POST, occasionally GET. POST is preferred for sending
payload data.
Idempotency in webhooks?
+
Idempotency ensures that processing the same webhook payload
multiple times does not have unintended side effects.
Ngrok in webhook development?
+
Ngrok exposes local servers to public URLs for testing webhook
endpoints during development.
Retry logic in webhooks?
+
Retry logic is the process of resending failed webhook events
after a failure or timeout.
Retry schedule in webhook delivery?
+
A retry schedule defines how and when failed webhook attempts
are retried, often with exponential backoff.
Secure Webhooks?
+
Use signatures, tokens, or HMAC hashing to verify payload
authenticity. HTTPS is mandatory for secure transmission.
Test Webhooks locally?
+
Use tools like ngrok or Postman’s Webhook feature to expose
your local server to the internet and receive webhook requests.
Use of Webhooks in payment systems?
+
Webhooks notify your server in real-time about payment events
like successful transactions, refunds, or failed payments. They automate updates in
your application or database.
Webhook analytics?
+
Tracking delivery success, latency, failures, retries, and
processing metrics.
Webhook authentication?
+
Authentication verifies that the webhook request is from a
trusted source, commonly using HMAC, tokens, or basic auth.
Webhook backoff strategy?
+
Backoff strategy defines increasing delay between retries to
reduce load on failing endpoints.
Webhook batching vs individual delivery?
+
Batching sends multiple events in a single request; individual
delivery sends each event separately.
Webhook batching?
+
Batching groups multiple webhook events into a single HTTP
request to reduce the number of requests.
Webhook callback?
+
A webhook callback is the function or endpoint that handles
incoming webhook data.
Webhook concurrency?
+
Concurrency is handling multiple webhook events at the same
time without conflicts or errors.
Webhook dead-letter handling?
+
Storing undelivered or failed webhook events for inspection and
retry.
A signature is a hash or token sent along with the payload to
verify authenticity.
Webhook simulator?
+
A tool that sends sample webhook payloads to test endpoints
without triggering real events.
Webhook subscription management?
+
Creating, updating, or deleting webhook subscriptions and
configuring event triggers.
Webhook testing?
+
Testing verifies that webhook endpoints receive and process
events correctly, often using tools like Postman or ngrok.
Webhook throttling vs rate limiting?
+
Throttling delays events to manage load; rate limiting enforces
maximum event delivery rate.
Webhook throttling?
+
Throttling limits the rate at which webhook events are
delivered to avoid overloading the target server.
Webhook timeout?
+
Time duration the sender waits for a response from the webhook
endpoint before considering it failed.
Webhook transformation?
+
Modifying the payload format or content before sending to the
consumer.
Webhook validation?
+
Validation ensures the payload structure, signature, and source
are correct before processing.
Webhook version compatibility?
+
Ensuring older endpoints can handle newer webhook payloads
without breaking.
Webhook versioning?
+
Versioning allows changes in webhook payload or behavior
without breaking existing consumers.
Webhook work?
+
When an event occurs, the source system makes an HTTP POST
request to the subscriber’s URL with a payload. The receiver processes the payload
and responds, usually with HTTP 200.
Webhook?
+
A webhook is an HTTP callback triggered by an event in a
system, sending real-time data to a URL endpoint. It allows services to communicate
instantly without polling.
WPF
+
Adorner in wpf?
+
Adorner provides visual cues or handles on UI elements without
altering their layout.
Animation in wpf?
+
Animation changes properties of UI elements over time.
Binding path?
+
Binding Path specifies the property of the source object to
bind to.
Bindingmode?
+
BindingMode specifies how data flows between source and target:
OneWay TwoWay OneWayToSource OneTime.
Bitmapcache?
+
BitmapCache caches visual content as a bitmap to improve
performance.
Canvas in wpf?
+
Canvas allows absolute positioning using coordinates.
Combobox in wpf?
+
ComboBox allows selection from a dropdown list.
Commandbinding?
+
CommandBinding binds a command to Execute and CanExecute
handlers.
Commands in wpf?
+
Commands decouple UI actions from logic. Built-in commands
include Copy, Paste; custom commands can be defined using ICommand.
Controltemplate vs datatemplate?
+
ControlTemplate changes control visuals; DataTemplate changes
data display.
Controltemplate?
+
ControlTemplate defines the visual structure and behavior of a
control.
Converter in wpf?
+
Converter (IValueConverter) converts data between source and
target during binding.
Data binding in wpf?
+
Data binding connects UI elements to data sources enabling
automatic updates and synchronization.
Datacontext?
+
DataContext specifies the data source for data binding in a
container or control.
Datagrid?
+
DataGrid displays tabular data with sorting editing and
selection support.
Datatemplate?
+
Defines the visual representation of data objects in WPF
controls like ListView or ComboBox. Supports reusable UI layouts.
Dependency properties?
+
Special properties that support data binding, styling,
animations, and property change notifications. Declared using
DependencyProperty.Register.
Dependency property?
+
Dependency Property is a property that supports data binding
animation and default values in WPF.
Dependencyobject vs freezable?
+
Freezable is a special DependencyObject that can be frozen to
improve performance.
Dependencyobject?
+
DependencyObject is the base class for objects that use
dependency properties.
Dependencyproperty vs clr property?
+
DependencyProperty supports WPF features like binding and
animation; CLR property is standard .NET property.
Dependencypropertykey?
+
DependencyPropertyKey is used for read-only dependency
properties.
Diffbet a normal property and a dependency property?
+
Normal property is standard .NET property; dependency property
supports WPF features like data binding and change notifications.
Diffbet a wpf window and a page?
+
Window is a top-level container for desktop apps; Page is used
for navigation-based applications like WPF Browser Applications.
Diffbet bubbling and tunneling events?
+
Bubbling moves from child to parent; tunneling moves from
parent to child in the visual tree.
Diffbet command and event?
+
Command is higher-level for MVVM; Event is low-level user
interaction handling.
Diffbet contentcontrol and itemscontrol?
+
ContentControl hosts a single item; ItemsControl hosts a
collection of items.
Diffbet controltemplate and datatemplate?
+
ControlTemplate changes control visuals; DataTemplate changes
how data is displayed.
Diffbet ivalueconverter and imultivalueconverter?
+
IValueConverter handles single binding; IMultiValueConverter
handles multiple bindings.
Diffbet mvvm and mvc?
+
MVVM separates UI (View) and logic (ViewModel); MVC separates
UI business logic (Controller) and data (Model).
Diffbet observablecollection and list?
+
ObservableCollection notifies UI on data changes, enabling
automatic updates. List does not support change notifications.
Diffbet oneway and twoway binding?
+
OneWay updates the target from the source; TwoWay updates both
target and source automatically.
Diffbet routedcommand and icommand?
+
RoutedCommand supports routing in visual tree; ICommand is
general interface for commands.
Diffbet routedevent and clr event?
+
RoutedEvent supports event routing; CLR event is standard .NET
event.
Diffbet routedeventargs and eventargs?
+
RoutedEventArgs includes routing information for events;
EventArgs is a base class without routing.
Diffbet staticresource and dynamicresource?
+
StaticResource is evaluated once at load; DynamicResource is
evaluated at runtime and can change.
Diffbet visual tree and logical tree?
+
Logical Tree is for UI structure and data binding; Visual Tree
includes all visual elements rendered including templates.
Diffbet winforms and wpf?
+
WinForms is pixel-based, simpler, less flexible. WPF is
vector-based, supports MVVM, templates, animations, and richer graphics.
Diffbet wpf and gtk#?
+
WPF is Windows-specific with XAML; GTK# is cross-platform with
C# bindings.
Diffbet wpf and silverlight?
+
WPF is for desktop apps; Silverlight was for web-based
browser-hosted applications and is now deprecated.
Diffbet wpf and uwp?
+
WPF is desktop-only; UWP supports Windows Store apps and
universal devices.
Diffbet wpf and windows forms?
+
WPF is more modern supports vector graphics data binding and
declarative XAML; Windows Forms is older and uses pixel-based controls.
Diffbet wpf and winui?
+
WinUI is modern Windows UI framework; WPF is legacy desktop
framework.
Dispatcher in wpf?
+
Dispatcher manages UI thread operations and allows thread-safe
updates to UI elements.
Dispatcher.invoke vs begininvoke?
+
Invoke is synchronous; BeginInvoke is asynchronous for
executing on UI thread.
Dispatchertimer?
+
DispatcherTimer runs code on the UI thread at specified
intervals.
Dockpanel in wpf?
+
DockPanel arranges child elements docked to top bottom left
right or fill.
Dpi in wpf?
+
WPF uses device-independent pixels to scale UI consistently
across different DPI settings.
Drawingbrush?
+
DrawingBrush paints an area with vector drawings.
Dynamicresource?
+
DynamicResource is evaluated at runtime and can change
dynamically.
Elementname binding?
+
ElementName binding binds one UI element to another using its
XAML name.
Freezable in wpf?
+
Freezable objects can be made immutable for performance
benefits like Brushes or Transform objects.
Freezable object?
+
Freezable can be made immutable to improve performance and
thread safety.
Grid in wpf?
+
Grid arranges elements in rows and columns.
Hit testing in wpf?
+
Hit Testing determines which visual element receives input
events like mouse clicks.
Icommand interface?
+
ICommand defines a command with Execute and CanExecute methods
for binding buttons and actions in MVVM.
Inotifypropertychanged?
+
INotifyPropertyChanged notifies the UI when a property value
changes for data binding.
Inputbinding?
+
InputBinding links input gestures like keyboard shortcuts to
commands.
Is threading handled in wpf?
+
UI runs on the main thread. Use Dispatcher.Invoke or
BackgroundWorker for safe cross-thread updates.
Itemscontrol?
+
ItemsControl displays a collection of items without selection
support.
Layout in wpf?
+
Layout determines how child elements are measured arranged and
rendered on the screen.
Listbox in wpf?
+
ListBox displays a list of items with selection support.
Logical tree?
+
Logical Tree represents the hierarchy of WPF elements and their
relationships.
Logicaltreehelper?
+
LogicalTreeHelper provides methods to navigate the logical tree
of WPF elements.
Main features of wpf?
+
Features include XAML-based UI data binding templates styles
controls 2D/3D graphics animation and media support.
Measureoverride and arrangeoverride?
+
Methods overridden in custom panels to define measuring and
arranging logic.
Multibinding converter?
+
MultiBinding converter combines multiple bound values and
returns a single value.
Multibinding?
+
MultiBinding combines multiple source values and passes them to
a converter.
Mvvm pattern?
+
MVVM (Model-View-ViewModel) separates UI (View) business logic
(ViewModel) and data (Model) for better maintainability.
Mvvm?
+
Model-View-ViewModel separates UI (View), logic (ViewModel),
and data (Model). Enhances maintainability, testability, and binding support.
Observablecollection?
+
ObservableCollection is a collection that notifies UI when
items are added removed or updated.